看来我的代码没有将列表中的整数转换为字符串。这是我的问题代码:
def aidrawboard(aiboard):
for i in aiboard:
inttostr = aiboard[i]
str(inttostr)
aiboard[i] = inttostr
for i in aiboard:
if aiboard[i] == '3':
aiboard[i] = '0'
break
print(aiboard)
print("THIS IS THE AI BOARD")
print(' | |')
print(' ' + aiboard[7] + ' | ' + aiboard[8] + ' | ' + aiboard[9])
print(' | |')
print('-----------')
print(' | |')
print(' ' + aiboard[4] + ' | ' + aiboard[5] + ' | ' + aiboard[6])
print(' | |')
print('-----------')
print(' | |')
print(' ' + aiboard[1] + ' | ' + aiboard[2] + ' | ' + aiboard[3])
print(' | |')
该代码用于战舰游戏。列表白板的示例是[0,0,2,0,0,0,0,0,0,0]
我收到错误“ TypeError:无法将'int'对象隐式转换为str”,错误指向
print(' ' + aiboard[7] + ' | ' + aiboard[8] + ' | ' + aiboard[9])
对不起,如果错误很新。这是我第一年的编码。
最佳答案
由于在abiword列表中存储的项目是整数,因此在打印时需要将元素(要打印)的数据类型转换为字符串。
print(' ' + str(aiboard[7]) + ' | ' + str(aiboard[8]) + ' | ' + str(aiboard[9]))