首页 > 解决方案 > 如何在 python 中打印这样的板?

问题描述

所需的输出:
期望的输出

我正在尝试使用二维数组打印一个看起来像这样的板,但我卡住了。这是我到目前为止的代码。

blank = ' ' 
board = [[ blank ] * 20 for i in range(19) ] 
def printboard(board):
  for i in board:
       for j in i:
           print(j, end = '')
       print('|')
printboard(board)

标签: pythonarrays

解决方案


我认为你的函数的输入应该是你想要的盒子的长度。然后你可以传递n=20给下面的函数来得到结果

 def printboard(n):
    print(' ' + ''.join([str(i % 10) for i in list(range(n))]))
    print(' ' + ''.join(['_']*n))
    for i in range(n):
        print('|' + ' '*n + '|' + str(i))
    print(' ' + ''.join(['_']*n))
    print(' ' + ''.join([str(i % 10) for i in list(range(n))]))

推荐阅读