Как удалить пару ключ-значение из словаря после доступа к нему?Python

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Как удалить пару ключ-значение из словаря после доступа к нему?

Сообщение Гость »


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

def show_instructions(): print('Добро пожаловать в Rocket Escape!\n') print('Соберите 6 частей космического корабля, чтобы покинуть планету, прежде чем вас поймает злая Корпоративная горнодобывающая компания!') print('Команды движения: север, юг, восток, запад') print('Чтобы забрать предмет и добавить его в инвентарь, введите «Приобрести»') print('Чтобы выйти из игры, введите: Exit') комнаты = { 'Дом': {'Север': 'Поля', 'Восток': 'Библиотека'}, 'Библиотека': {'Запад': 'Дом', 'предмет': 'Карта'}, 'Поля': {'Север': 'Топливный склад', 'Восток': 'Лаборатория', 'Юг': 'Дом', 'Запад': 'Стартовая площадка', 'предмет': 'Пайки'}, «Стартовая площадка»: { «Восток»: «Поля», «предмет»: «Ключи»}, «Топливный склад»: { «Юг»: «Поля», «Восток»: «Передние ворота», «предмет»: «Топливо»}, 'Лаборатория': {'Север': 'Сарай', 'Запад': 'Поля', 'предмет': 'Скафандр'}, 'Сарай': {'Юг': 'Лаборатория', 'предмет': 'Боеприпасы'}, «Передние ворота»: { «Запад»: «Топливный склад», «item»: «Корпоративная горнодобывающая компания!»}} защита player_stat(): Распечатать('') print('Вы находитесь в {}'.format(current_room)) print('Текущий инвентарь: {}'.format(current_inv)) если «предмет» в комнатах[current_room]: print('\nВы видите {}!'.format(rooms[current_room]['item'])) Распечатать('') текущий_инв = [] current_room = 'Дом' player_move = '' show_instructions() пока правда: player_stat() player_move = input('Введите свой ход:\n').title() if player_move == 'Выход': print('Выход. Спасибо за игру!') перерыв elif player_move в комнатах[current_room]: текущая_комната = комнаты[текущая_комната][player_move] elif player_move == 'Получить': current_inv.append(комнаты[current_room]['предмет']) print('Вы приобрели {}!'.format(rooms[current_room]['item'])) if current_room == 'Главные ворота': print('О нет! Вас схватила Корпоративная горнодобывающая компания!') перерыв еще: print('\nНеверный ход') #Я пытался использовать функцию del, но она удалила всю пару значений перед итерацией
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как удалить пару ключ: значение с карты Firebase?
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Как удалить пару ключ: значение с карты Firebase?
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Разделить строку с разделителями на пару ключ-значение
    Anonymous » » в форуме Php
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Как передать пользовательскую пару конфигурации (ключ/значение) в приложение Android, установленное через Microsoft Intu
    Anonymous » » в форуме Android
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Как передать пару ключ/значение в строке запроса с одной страницы на другую в проекте с помощью Struts 2?
    Anonymous » » в форуме JAVA
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»