用2D阵列为棋盘游戏制作网格

时间:2018-12-08 15:24:04

标签: python-3.x multidimensional-array

我将尽力做到尽可能具体,并以可以接受的方式表达自己。我希望不会以不好的方式表述我的问题来冒犯任何人。我对Python相当陌生,希望得到专家的认可。

问题到此..

我目前正朝着制作棋盘游戏的方向迈进。我已经到了要点(准备看我的代码):

def createGrid(rows, cols):
grid = [[0 for i in range(cols)] for j in range(rows)]
print(grid)

createGrid(3,4)

这将输出

[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]

这正是我想要的。 2D阵列。这应该是我的棋盘游戏的网格。

对我来说,下一步是将每个内部列表排成一行。 (我知道这已经是事实了),但是目前它们都被涂在一条线上。我想知道:如何去安排内部列表,使其看起来像合法矩阵?

所以就像一个内部列表相互堆叠的矩形。

提前谢谢! :)

1 个答案:

答案 0 :(得分:1)

最简单的方法是pretty print

import pprint

pprint.pprint(grid)

或者您可以选择自己渲染:

for row in grid:
    print('>>', row, '<<')

或者:

for row in grid:
    for elt in row:
        print(f'({elt})', end=' ')
    print('.\n')

或者考虑跳入numpy