Сомельешное
Мы всё дальше от бога.

Мы всё дальше от бога.
Служители Ленинградского зоопарка подготовили для грациозной хищницы пумы Синди сюрприз. Сотрудники зоопарка завернули пластиковый цилиндр в крафтовую бумагу, а внутри спрятали аппетитное мясо. Такой подарок пришёлся Синди по душе: шуршит, катится, да ещё и лакомство внутри. Просто идеальная комбинация для довольной пумы.
Видео отсюда
Представьте, что у вас есть два кота: Барсик и Мурзик. У каждого из них есть свои миски с едой. Но вот беда: вы хотите объединить их миски в один общий список, чтобы не путаться. Как это сделать, чтобы коты не подрались? В Python есть несколько способов объединения словарей, и сегодня мы разберём их все.
Словари (или dict) — это одна из самых популярных структур данных в Python. Иногда возникает необходимость объединить два или более словарей в один. Например:
🐾 У вас есть настройки по умолчанию и пользовательские настройки.
🐾 Вы хотите объединить данные из разных источников.
🐾 Вы просто хотите, чтобы Барсик и Мурзик делили свои миски.
Python предлагает несколько способов объединения словарей. Мы рассмотрим:
🐾 Метод update().
🐾 Оператор | (Python 3.9+).
🐾 Распаковку словарей (**).
🐾 ChainMap из модуля collections (рассмотрели в прошлом посте)
1. Метод update()
Метод update() добавляет элементы из одного словаря в другой. Если ключи совпадают, значения будут перезаписаны.
Пример:
Значение для ключа Barsik было перезаписано.
2. Оператор | (Python 3.9+)
С появлением Python 3.9 объединение словарей стало ещё проще. Оператор | создаёт новый словарь, объединяя два других.
Пример:
Здесь создаётся новый словарь, а исходные остаются неизменными.
3. Распаковка словарей (**)
Распаковка словарей позволяет объединить их, создавая новый словарь. Это работает даже в версиях Python до 3.9.
Пример:
Как и в предыдущих примерах, значение для Barsik было перезаписано.
🐾 update():
Когда нужно изменить существующий словарь.
Если не важно сохранить исходные данные.
🐾 Оператор |:
Когда нужен новый словарь.
Если вы используете Python 3.9+.
🐾 Распаковка (**):
Когда нужен новый словарь.
Если вы используете Python до 3.9.
Представьте, что у вас есть две коробки с игрушками: одна для Барсика, другая для Мурзика.
Если вы пересыпаете игрушки из одной коробки в другую, это update().
Если вы берёте новую коробку и кладёте туда игрушки из других коробок, это оператор | или распаковка.
Если вы просто ставите коробки рядом и говорите: "Теперь это одна большая коробка", это ChainMap.
О чём ещё вам было бы интересно почитать? Расскажите в комментариях! 🐾
И, по начинающейся традиции, на канале https://t.me/pytonism вас ждёт новая задача! Успешного кодинга!
Ori and the Will of the wisps
Всем привет, я коллекционирую игры на консоли уже несколько лет. У меня нет каких-то особых предпочтений или чётких рамок в том, что я собираю. Я просто люблю игры и поэтому последовательно собираю все что меня заинтересует. Недавно появилось желание зафиксировать свою коллекцию в качестве небольших роликов. Без всякой болтовни. Просто красивая распаковка.
Буду рад любой обратно связи!