在Python中创建匹配的游戏

时间:2013-11-24 21:15:11

标签: python

我试图在5x5网格中为匹配游戏创建一个类。用户将根据行号和列号选择范围。我花了最后几个小时试图弄清楚如何设置它,我认为它应该是一个集合或x,y坐标的元组列表。通过执行以下操作,我可以获得集合中生成的坐标列表:

board = set((x,y)
        for x in range(5)
        for y in range(5))

我无法弄清楚如何将其变成可行的电路板。我正在努力创建一个真正的董事会"使用匹配的值,并显示"显示"在用户获得匹配之前只有X的板,然后真正的值将显示在他们的板上。

理想情况下,应该有一块看起来像

的电路板
X X X X X
X X X X X
X X X X X
X X X X X
X X X X X

和另一对随机对:

A M F H I
C D B J E
G I F A C
D J G H L
K E L B M

2 个答案:

答案 0 :(得分:1)

表示董事会的更好方法可能是使用字典:

board = {}
for x in range(5):
    for y in range(5):
        board[x, y] = 'X'

您可以通过执行以下操作来更新角色:board[3, 4] = 'D'

您甚至可以使用dictionary comprehension指定电路板:

board = {(x, y): 'X' for x in range(5) for y in range(5)}

答案 1 :(得分:1)

我会使用列表列表:

board = []

def initializeBoard(board):
    for i in range(5):
        board.append([])
    for l in board:
        for i in range(5):
            l.append('X')

def printBoard(board):
    for l in board:
        for e in l:
            print e,
        print 


initializeBoard(board)
board[0][1] = 'A' # To access an element        
printBoard(board)

>>> 
X A X X X
X X X X X
X X X X X
X X X X X
X X X X X