Как добавить пару ключ-значение в словарь?
альтернативный вариант, позволяющий добавить сразу несколько элементов:
In [149]: d.update(dict(height='720', blah='blah-blah')) In [150]: d Out[150]:
Отслеживать
ответ дан 20 июл 2019 в 13:39
MaxU — stand with Ukraine MaxU — stand with Ukraine
149k 12 12 золотых знаков 59 59 серебряных знаков 132 132 бронзовых знака
d = < 'format': 'video', 'abr': '320', >d['height'] = '720' # или "d.update()" print(d)
stdout:
Отслеживать
ответ дан 20 июл 2019 в 13:39
18.4k 5 5 золотых знаков 24 24 серебряных знака 48 48 бронзовых знаков
d = d['height'] = '720'
В отличии от списков,если попробовать присвоить какое-нибудь значение несуществующему элементу,то этот элемент будет создан и получит значение которое вы присваивали.Со списками же такая махинация вызовет исключение!
Отслеживать
ответ дан 20 июл 2019 в 14:21
346 1 1 серебряный знак 13 13 бронзовых знаков
- python
- python-3.x
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Словари (dict) и работа с ними. Методы словарей

Сегодня я расскажу о таком типе данных, как словари, о работе со словарями, операциях над ними, методах, о генераторах словарей.
Словари в Python — неупорядоченные коллекции произвольных объектов с доступом по ключу. Их иногда ещё называют ассоциативными массивами или хеш-таблицами.
Чтобы работать со словарём, его нужно создать. Сделать это можно несколькими способами. Во-первых, с помощью литерала:
Во-вторых, с помощью функции dict:
В-третьих, с помощью метода fromkeys:
В-четвертых, с помощью генераторов словарей, которые очень похожи на генераторы списков.
Теперь попробуем добавить записей в словарь и извлечь значения ключей:
: Как видно из примера, присвоение по новому ключу расширяет словарь, присвоение по существующему ключу перезаписывает его, а попытка извлечения несуществующего ключа порождает исключение. Для избежания исключения есть специальный метод (см. ниже), или можно перехватывать исключение.
Что же можно еще делать со словарями? Да то же самое, что и с другими объектами: встроенные функции, ключевые слова (например, циклы for и while), а также специальные методы словарей.
Методы словарей
dict.clear() — очищает словарь.
dict.copy() — возвращает копию словаря.
classmethod dict.fromkeys(seq[, value]) — создает словарь с ключами из seq и значением value (по умолчанию None).
dict.get(key[, default]) — возвращает значение ключа, но если его нет, не бросает исключение, а возвращает default (по умолчанию None).
dict.items() — возвращает пары (ключ, значение).
dict.keys() — возвращает ключи в словаре.
dict.pop(key[, default]) — удаляет ключ и возвращает значение. Если ключа нет, возвращает default (по умолчанию бросает исключение).
dict.popitem() — удаляет и возвращает пару (ключ, значение). Если словарь пуст, бросает исключение KeyError. Помните, что словари неупорядочены.
dict.setdefault(key[, default]) — возвращает значение ключа, но если его нет, не бросает исключение, а создает ключ со значением default (по умолчанию None).
dict.update([other]) — обновляет словарь, добавляя пары (ключ, значение) из other. Существующие ключи перезаписываются. Возвращает None (не новый словарь!).
dict.values() — возвращает значения в словаре.
Для вставки кода на Python в комментарий заключайте его в теги
Словари
Словари — еще один встроенный тип данных для хранения объектов. Они используются для связывания одного объекта, называемого ключом, с другим, называемым значением. Такое связывание называется отображением. Результатом отображения будет пара ключ-значение. Пары ключ-значение добавляются в словарь. Затем вы можете найти в словаре ключ и получить соответствующее ему значение. Однако нельзя, наоборот, использовать значение для нахождения ключа.
Словари, как и списки, изменяемы. То есть, в них можно добавлять новые пары ключ-значение. Их полезность заключается в связях между ключами и значениями — существует множество ситуаций, в которых вам потребуется сохранять данные попарно. Например, в словаре можно сохранить информацию о телефонных номерах ваших друзей:
phones = "Иван": "+7123456789", "Василий": "+37520123456">print(phones)
При создании словаря нужно использовать фигурные скобки, отделять ключ от значения двоеточием, а пары ключ-значение разделять запятыми. В отличие от кортежей, если у вас есть только одна пара ключ-значение, запятая после нее не нужна.
Как только вы создали словарь, можете добавлять в него пары ключ-значение, используя синтаксис имя\_словаря[ключ] = значение , а также искать значение при помощи ключа, используя синтаксис имя_словаря[ключ] .
phones = "Иван": "+7123456789", "Василий": "+37520123456">phones['Григорий'] = 1234567890print(phones['Иван'])
Значением в словаре может быть любой объект. В предыдущем примере первые два значения были строками, а последнее значение, 1234567890 , — целым числом.
В отличие от значения словаря, ключ словаря должен быть неизменяемым. Ключом словаря может быть строка или кортеж, но не список или словарь. Для определения того, есть ли ключ в словаре, используйте ключевое слово in , а not in — для проверки отсутствия ключа.
phones = "Иван": "+7123456789", "Василий": "+37520123456">print("Василий" in phones) # True
Из словаря можно удалить пару ключ-значение с помощью ключевого слова del .
phones = "Иван": "+7123456789", "Василий": "+37520123456">del phones["Василий"]
Вы можете сохранять контейнеры в других контейнерах. Например, можно хранить списки внутри списка.
music = "rap": ["Баста", "Кравц", "Злой Дух"], "rock": ["Наутилус Помпилиус", "Кино", "Ария"], "djs": ["Paul Oakenfold", "Tiesto"]>
В этом примере словарь music имеет три ключа, каждый из которых является списком: К этим спискам можно получить доступ с помощью соответствующих ключей
music = "rap": ["Баста", "Кравц", "Злой Дух"], "rock": ["Наутилус Помпилиус", "Кино", "Ария"], "djs": ["Paul Oakenfold", "Tiesto"]>print(music['rap']) # ['Баста', 'Кравц', 'Злой Дух']print(music['rock'][-1]) # Ария
Хотите выучить Python на практике?
Как добавить элемент в словарь Python

В языке программирования Python словарь представляет собой упорядоченную коллекцию пар ключ-значение. Он широко используется для хранения и организации данных, где каждый элемент обращается по ключу вместо индекса, как в случае с другими структурами данных, такими как списки.
Одной из основных операций, которые мы часто выполняем над словарями, является добавление новых элементов. Добавление элементов в словарь позволяет нам расширять его функциональность и вносить новые данные для дальнейшей обработки.
В этой статье мы рассмотрим несколько способов добавления элементов в словарь Python. Мы охватим различные сценарии и покажем, как использовать разные подходы в зависимости от конкретных требований. Продолжайте чтение, чтобы узнать о различных методах и приемах добавления элементов в словарь Python.
Добавление элементов с использованием квадратных скобок
Добавление элементов в словарь с использованием квадратных скобок — это один из способов добавления новых пар ключ-значение в словарь. Мы можем использовать существующий ключ в квадратных скобках и присвоить ему новое значение. Если ключ не существует, то он будет создан, и ему будет присвоено указанное значение.
Вот пример использования квадратных скобок для добавления элементов в словарь:
my_dict = my_dict['cherry'] = 2 my_dict['orange'] = 4 print(my_dict) # Вывод:
В этом примере мы создали словарь my_dict с двумя начальными парами ключ-значение. Затем мы использовали квадратные скобки для добавления новых элементов. Мы добавили ключ 'cherry' со значением 2 и ключ 'orange' со значением 4 .
Если ключ уже существует в словаре, то его значение будет заменено новым значением. Например, если мы повторно добавим ключ 'apple' с новым значением, то значение 'apple' в словаре будет обновлено.
my_dict['apple'] = 7
В результате значение 'apple' в словаре изменится на 7 .
Использование квадратных скобок для добавления элементов в словарь — простой и удобный способ. Он позволяет нам легко добавлять новые пары ключ-значение и обновлять значения существующих ключей в словаре.
Добавление элементов с использованием метода update()
Добавление элементов в словарь с использованием метода update() — это еще один удобный способ добавления новых пар ключ-значение в словарь в Python. Метод update() позволяет объединить два словаря или добавить несколько пар ключ-значение в существующий словарь.
Вот пример использования метода update() для добавления элементов в словарь:
my_dict = my_dict.update() print(my_dict) # Вывод
В этом примере мы создали словарь my_dict с двумя начальными парами ключ-значение. Затем мы использовали метод update() и передали ему новый словарь с парами ключ-значение, которые мы хотим добавить. Метод update() объединяет два словаря, добавляя новые пары ключ-значение к существующему словарю.
Мы также можем использовать метод update() для добавления одной пары ключ-значение в словарь:
my_dict.update()
В этом случае мы передаем методу update() словарь с одной парой ключ-значение, которую мы хотим добавить.
Еще один способ использования метода update() — передать ему итерируемый объект, содержащий пары ключ-значение:
my_dict.update([('cherry', 2), ('orange', 4)])
В этом примере мы передаем список кортежей с парами ключ-значение методу update() , чтобы добавить эти пары в словарь.
Метод update() также может быть использован для обновления значений существующих ключей. Если ключ уже существует в словаре, то его значение будет заменено новым значением из переданного словаря или итерируемого объекта.
Использование метода update() предоставляет гибкость при добавлении элементов в словарь и позволяет нам добавлять несколько пар ключ-значение за один раз или объединять словари. Это удобный метод для манипуляции со словарями в Python.
Добавление элементов с проверкой наличия ключа
При добавлении элементов в словарь в Python, иногда может возникнуть необходимость проверить наличие ключа, чтобы избежать перезаписи существующего значения или выполнить определенные действия в зависимости от результата проверки.
Для проверки наличия ключа в словаре и добавления элемента с условием, мы можем использовать метод setdefault() . Этот метод позволяет нам задать значение по умолчанию, которое будет установлено для ключа, если его нет в словаре.
Вот пример использования метода setdefault() для добавления элементов с проверкой наличия ключа:
my_dict = my_dict.setdefault('cherry', 2) # Добавляем новую пару ключ-значение my_dict.setdefault('banana', 10) # Не добавляем, так как ключ уже существует print(my_dict) # Вывод
В данном примере у нас есть словарь my_dict с двумя парами ключ-значение. Мы используем метод setdefault() для добавления новой пары ключ-значение. Первый вызов my_dict.setdefault('cherry', 2) добавляет пару 'cherry': 2' , так как ключ 'cherry' не существует в словаре. Второй вызов my_dict.setdefault('banana', 10) не добавляет новую пару, так как ключ 'banana' уже присутствует в словаре.
Метод setdefault() возвращает значение, связанное с ключом, если ключ уже существует в словаре, и устанавливает значение по умолчанию и возвращает его, если ключа нет в словаре. Это позволяет нам получать текущее значение ключа или устанавливать новое значение, если ключ отсутствует.
Использование метода setdefault() с проверкой наличия ключа обеспечивает безопасное добавление элементов в словарь, предотвращая перезапись существующих значений и давая нам контроль над добавлением элементов в зависимости от наличия ключа.