如何更新带有引用错误的 if else 语句中的变量

How to update variable in if else statement with reference error

在开发一个文本库游戏时,您可以在其中移动您的角色穿过房间,但是,我 运行 遇到关于我的位置变量未被引用的错误

current_position = rooms[0]
def player_moves_south():
    if current_position == rooms[0]:
        current_position = rooms[1]
        print('welcome too the Bedroom you can now move North or East')
        player_choice = input()
        return player_choice

        return current_position
    else:
        print('error')

我一直收到错误提示

'current_position' not referenced

有人能帮忙吗?将不胜感激

您是否为角色创建了一个 canvas 继续前进?

当我这样尝试的时候

def player_moves_south():
     current_position = rooms[0]
     if current_position == rooms[0]:
        print('welcome too the Bedroom you can now move North or East')
        player_choice = input()

        return player_choice

        return current_position

     else:
         print('error')

player_moves_south()

成功了。我把 current_position 放在函数中,它没有给我任何错误。

如果您想在函数外使用 current_position 变量,您可以在函数中将其全局化。像这样

global current_position
current_position = rooms[0]