Как добавить и обновить ключи в словаре Python

Узнайте, как добавлять элементы или обновлять пары «ключ-значение» в словаре Python. Изучите квадратные скобки, метод обновления и параметры оператора слияния.

Попробуйте это решение в редакторе

Обзор

Добавление и обновление элементов в словаре — это основная концепция управления состоянием, обработки данных и обновления конфигурации. Поскольку словари Python представляют собой изменяемые коллекции, вы можете легко изменять их ключи и значения динамически во время выполнения программы без необходимости воссоздавать всю структуру.

Самый простой способ добавить пару ключ-значение — использовать синтаксис назначения квадратных скобок: `my_dict[key] = value`. Если ключ не существует, Python добавляет его в словарь. Если ключ уже существует, Python перезаписывает его старое значение новым.

Для массовых обновлений или операций слияния Python предоставляет метод `.update()`, который принимает другой словарь или итерацию пар ключ-значение. Кроме того, вPython 3.9+ вы можете использовать оператор объединения слияния `|` для объединения двух словарей в новый или оператор обновления `|=` для обновления словаря на месте.

Код и вывод выполнения

Этот скрипт демонстрирует добавление, обновление и объединение словарей в Python.

profile = {"username": "sara", "level": 5}

# 1. Add new key-value pair using brackets
profile["verified"] = True
print("After adding key:", profile)

# 2. Update existing key using brackets
profile["level"] = 6
print("After updating key:", profile)

# 3. Add/Update multiple keys using update()
profile.update({"avatar": "cat.png", "level": 7})
print("After update():", profile)

# 4. Using the merge operator (Python 3.9+)
extra_info = {"location": "US"}
merged_profile = profile | extra_info
print("Merged profile:", merged_profile)
Терминальный выход
After adding key: {'username': 'sara', 'level': 5, 'verified': True}
After updating key: {'username': 'sara', 'level': 6, 'verified': True}
After update(): {'username': 'sara', 'level': 7, 'verified': True, 'avatar': 'cat.png'}
Merged profile: {'username': 'sara', 'level': 7, 'verified': True, 'avatar': 'cat.png', 'location': 'US'}

Пошаговая реализация

  • Используйте скобочную запись my_dict['new_key'] = value, чтобы вставить один новый элемент.
  • Вызовите my_dict.update(new_dict), чтобы объединить несколько ключей и значений на месте.
  • Используйте | оператор объединения вPython 3.9+ для объединения словарей без изменения оригиналов.

Часто задаваемые вопросы

Что произойдет, если я добавлю уже существующий ключ?

Старое значение, связанное с этим ключом, автоматически заменяется новым значением.

Могу ли я добавить ключ со значением списка по умолчанию, если он не существует?

Да! Вы можете использовать my_dict.setdefault(key, []) или defaultdict из модуля коллекций для автоматизации инициализации значения по умолчанию.

Связанные темы

Рекомендуемые ресурсы Python

Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.