2017-08-28 87 views
0

我有一个错误:的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"]) 

有人能帮助我吗?

+4

'locations [“player”]'是值'(4,1)'。 '(4,1)[0]'是'4'。你期望'4 [0]'是什么意思? – Ryan

回答

5

这就是为什么你的错误:

player[0][0] == (4, 1)[0][0] == 4[0] 

您传递locations["player"]possibleMoves(player),所以player == locations["player"] == (4, 1)

+0

呵呵,我没有看到。谢谢您的帮助! – NoahSonic123

+0

@cᴏʟᴅsᴘᴇᴇᴅ你的评论对我没有多大意义。 –

相关问题