我被要求为一个学校项目制作一个数字匹配游戏,其中包括在网格中生成随机数。我已经成功地生成了一个充满随机数的网格,但是我需要它们成对,这样才能匹配。任何帮助都将不胜感激。以下是我目前为止的代码:
def play(): 随机导入
sizeofgrid()
board = []
showboard = []
for row in range(gridsize):
board.append([])
for column in range(gridsize):
board[row].append(random.randint(0, 9))
def print_board(board):
for row in board:
print(' '.join([str(i) for i in row]))
showboard = [['O' for _ in range(gridsize)] for _ in range(gridsize)]
print_board(showboard)
print_board(board)
一种方法可能是生成所需数量的一半,然后将列表加倍。然后,将所需的值无序排列并调整到网格中。在
你需要改变你的方法。您可以尝试以下两种方法之一:
从一块空板开始。生成一个随机数,然后生成 板上的两个随机位置。继续生成,直到您发现 一个空位,两次。把随机数放入两个位置。在
计算需要填充多少个位置。生成N/2 随机数,将每个随机数放入一个列表中,两次。现在, 洗牌列表,然后在棋盘上循环,插入 把名单放到黑板上。在
这两种方法中的任何一种都会让你得到你想要的配对行为。你选择哪一个是一个舒适的问题。在
相关问题 更多 >
编程相关推荐