2017-04-04 40 views
-2

我很难理解如何为连接游戏设置我的电路板。我制作的主板显然是复杂的,所以任何人都可以给我提示或替代方案来处理这个问题?与建立我的板连接四游戏麻烦。我如何反思抽象?

print("CONNECT FOUR ☼ ○") 
first_row = [". ", ". ", ". ", ". ", ". ", ". ", ". "] 
second_row = [". ", ". ", ". ", ". ", ". ", ". ", ". "] 
third_row = [". ", ". ", ". ", ". ", ". ", ". ", ". "] 
fourth_row = [". ", ". ", ". ", ". ", ". ", ". ", ". "] 
fifth_row =[". ", ". ", ". ", ". ", ". ", ". ", ". "] 
sixth_row = [". ", ". ", ". ", ". ", ". ", ". ", ". "] 
seventh_row = [". ", ". ", ". ", ". ", ". ", ". ", ". "] 


def display_board(a, b, c, d, e, f): 
    print(a[0], a[1], a[2], a[3], a[4], a[5], a[6]) 
    print(b[0], b[1], b[2], b[3], b[4], b[5], b[6]) 
    print(c[0], c[1], c[2], c[3], c[4], c[5], c[6]) 
    print(d[0], d[1], d[2], d[3], d[4], d[5], d[6]) 
    print(e[0], e[1], e[2], e[3], e[4], e[5], e[6]) 
    print(f[0], f[1], f[2], f[3], f[4], f[5], f[6]) 
    print("1 2 3 4 5 6 7 ") 

display_board(first_row, second_row,third_row, fourth_row, sixth_row, seventh_row) 

回答

2

我会保持它作为具有多个子列表一个列表:

board = [["."] * 7 for _ in range(7)] 

def display_board(board): 
    for row in board: 
     print(" ".join(row)) 
    print(" ".join(str(num) for num in range(1, len(row) + 1))) 

display_board(board) 

然后进入左上角的单元格,例如,你可以做board[0][0]。要访问第四行中的第三项,它将是board[3][2]

+0

谢谢你的建议,我一定会用这个。我唯一的问题是如何获得点的列与数字对齐? –

+0

@EmilyRivas:对不起,我错过了。您需要在'for'循环的''“.join()'行中有一个额外的空间。我编辑过。 – zondo

+0

@EmilyRivas:有什么不起作用? (我注意到你不接受我的答案。) – zondo