有没有一种方法可以在python的if语句中向字典添加项目?

时间:2019-01-09 17:55:22

标签: python python-3.x dictionary if-statement game-development

我正在制作一款基于文本的冒险游戏,并试图根据玩家的库存中有钥匙将物品添加到目录中。

我尝试了所有可以找到的解决方案,但没有一个起作用。我认为这可能是因为我的语法与其他字典不同。

    if 'key' in inventory:
    print('Well done for killing all monsters on the first floor! You can 
    now 
    travel upstairs from the hall')
    'Hall' ['upstairs'] = 'Landing'

     'Hall' : {
              'south' : 'Kitchen',
              'east'  : 'Dining Room',
              'north' : 'Library',
              'west' : 'Game Room',
            }, 

请告诉我另一种放置方式

    'Hall' ['upstairs'] = 'Landing'

无需更改所有目录,因为我还有许多其他房间。

1 个答案:

答案 0 :(得分:0)

您提到了您不熟悉的“不同语法”-所以我想这实际上就是您出现问题的地方。请参阅下面的“我的改编”-这是您期望的行为吗?

Hall = {
    'south': 'Kitchen',
    'east': 'Dining Room',
    'north': 'Library',
    'west': 'Game Room',
}

inventory = ['key']

if 'key' in inventory:
    print('Well done for killing all monsters on the first floor! You can now travel upstairs from the hall')
    Hall['upstairs'] = 'Landing'

print(Hall)
# Output: {'south': 'Kitchen', 'east': 'Dining Room', 'north': 'Library', 'west': 'Game Room', 'upstairs': 'Landing'}

注意:您需要先定义字典Hall,然后才能分配诸如Hall['upstairs'] = 'Landing'这样的键值对。