
Последние записи
- Запуск сторонней программы с передачей строки и ожиданием ее завершения
- Перемешать строки
- Поэлементное сложение списков с вложенными словарями
- Найти все диски
- Игра Лабиринт (Console Edition)
- Почему не работает функция CharToOem
- Можно ли запускать приложение написанное на Java в браузере
- Изменить в word файле шрифт
- Удалить лишнее слева и справа от конкретных символов (Microsoft Office Excel)
- Как из ip адреса вывести последние цифры

Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk

Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
15th
Ноя
Поэлементное сложение списков с вложенными словарями
Posted by obzor under Python
Есть 2 списка всегда из 5 элементов — словарей, значения которых тоже словарь например
x = [{'2': {'1': 7}, '3':{'1':0, '5': 0}}, {}, {}, {}, {}]
y = [{'2': {'1': 1, '2': 5}}, {}, {}, {}, {}]
в итоге нужно сложить поэлементно два этих списка
Должно получиться
x + y = [{'2': {'1': 8, '2': 5}, '3':{'1':0, '5': 0}}, {}, {}, {}, {}]
начал писать запутался в циклах, просьба помочь
def merge(a, b):
if type(a) is int and type(b) is int:
return a + b
if type(a) is dict and type(b) is dict:
d = a | b
for k in a.keys() & b.keys():
d[k] = merge(a[k], b[k])
return d
raise RuntimeError("Can't merge different types")
x = [{'2': {'1': 7}, '3':{'1':0, '5': 0}}, {}, {}, {}, {}]
y = [{'2': {'1': 1, '2': 5}}, {}, {}, {}, {}]
z = [merge(a, b) for a, b in zip(x, y)]
print(z)
Первое, что пришло в голову.
Похожие статьи
Купить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту

пеллетные котлы

Пеллетный котел Emtas

Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)