的Python - 类型错误:int对象不标化
问题描述:
我有一个错误:的Python - 类型错误:int对象不标化
Traceback (most recent call last):
File "DungeonGame.py", line 92, in <module>
possible = possibleMoves(locations["player"])
File "DungeonGame.py", line 65, in possibleMoves
if player[0][0] == 0:
TypeError: 'int' object is not subscriptable
这里是我的代码:
def possibleMoves(player):
options = ["RIGHT", "LEFT", "UP", "DOWN"]
if player[0][0] == 0:
options.remove("LEFT")
elif player[0][0] == 4:
options.remove("RIGHT")
elif player[0][1] == 0:
options.remove("DOWN")
elif player[0][1] == 4:
options.remove("UP")
return options
...
locations = {"monster" : (1, 2), "door" : (3, 2), "player" : (4, 1)}
possible = possibleMoves(locations["player"])
有人能帮助我吗?
答
这就是为什么你的错误:
player[0][0] == (4, 1)[0][0] == 4[0]
您传递locations["player"]
到possibleMoves(player)
,所以player == locations["player"] == (4, 1)
。
+0
呵呵,我没有看到。谢谢您的帮助! – NoahSonic123
+0
@cᴏʟᴅsᴘᴇᴇᴅ你的评论对我没有多大意义。 –
'locations [“player”]'是值'(4,1)'。 '(4,1)[0]'是'4'。你期望'4 [0]'是什么意思? – Ryan