这是我遇到的错误,我大致理解了它的意思,但我一直认为您可以在不更改其类型的情况下打印特定的列表索引:
我正在使用的代码是:
Board = [1,2,3,4,5,6,7,8,9]
def CreateBoard(Board):
print(" | |")
print(" " + Board[7] + " | " + Board[8] + " | " + Board[9])
print(" | |")
print('-----------')
print(" | |")
print(" " + Board[4] + " | " + Board[5] + " | " + Board[6])
print(" | |")
print("-----------")
print(" | |")
print(" " + Board[1] + " | " + Board[2] + " | " + Board[3])
print(" | |")
CreateBoard(Board)
我想在打印时将其保留为列表值,因为我需要在特定位置打印特定值,这是我最熟悉的唯一方法! 我已经意识到问题似乎在于它试图像公式一样将这些值相加,所以现在我需要找出如何防止将它们相加并将其打印在字符串旁边的方法。
答案 0 :(得分:1)
请注意它给您的错误。
TypeError: must be str, not int
or,
TypeError: You can only concatenate string, (not "int") to String
因此,您可以将类型(转换为字符串):
print(" " + str(Board[6]) + " | " + str(Board[7]) + " | " + str(Board[8]))
将打印以下内容:
7 | 8 | 9
但是,更好的方法是使用字符串格式:
print("| {} | {} | {}".format(Board[1], Board[5], Board[7]))
这将打印以下内容:
| 2 | 6 | 8