在python中为棋盘游戏创建2D网格

0 python grid

我正在使用Python进行计算机科学的入门课程,我们进行了练习制作棋盘游戏(dogems).我在构建电路板时遇到了麻烦.该程序假设采用一个给定的参数,并使用函数make_board(size)构造一个相等行和列的板,其底部带数字,侧面带字母.然后函数show_board(board)显示它.例如,板尺寸:4将给出:

a . . .
b . . .
c . . .
. 1 2 3
Run Code Online (Sandbox Code Playgroud)

然而,一块板尺寸:5会给出:

a . . . .
b . . . .
c . . . .
d . . . .
. 1 2 3 4
Run Code Online (Sandbox Code Playgroud)

我的问题基本上是,如何编写这些函数来构建这种性质的电路板?

Hen*_*nry 8

尝试从非常简单的东西开始,比如打印出最底行:

. 1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)

这很简单

print '.', '1', '2', '3', '4', '5'
Run Code Online (Sandbox Code Playgroud)

如果我想要一个可变尺寸的电路板怎么办?

我们试试一个循环

for i in range(length+1):
    if i == 0:
        print '.'
    else:
        print i
Run Code Online (Sandbox Code Playgroud)

请注意,您需要一个可变长度.

好吧,列怎么样?这些是字母,我们如何打印可变长度的字母列表?

当您逐一解决这些小问题时,您将开始意识到哪些变量变得明显.也许您决定存储列表列表是最好的方法,因此make_board(size)返回类似于字符列表的列表,并show_board(board)在for循环中使用for循环将其打印出来.

不要指望StackOverflow完成的解决方案,尝试做一些这样的事情,当你真的遇到问题时问一个问题!

  • +1"尝试做一些这样的事情,当你真的卡住时问一个问题" (2认同)