Есть ли способ добавить элемент в словарь в операторе if с python? - PullRequest
0 голосов
/ 09 января 2019

Я делаю текстовую приключенческую игру и пытаюсь добавить предмет в каталог, исходя из того, что у игрока есть ключ в инвентаре.

Я перепробовал каждое решение, которое смог найти, и ни одно из них не сработало. Я думаю, что это возможно, потому что у меня другой синтаксис к другим словарям.

    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 голосов
/ 09 января 2019

Вы упомянули ваш «другой синтаксис», с которым я не знаком - так что, я думаю, именно здесь возникают ваши проблемы. Смотрите мои Адаптации ниже - это поведение, которое вы ожидали?

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'.

...