Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поэлементное сложение списков с вложенными словаря 
:(
    Опции темы
polin11
Дата 30.10.2023, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 123
Регистрация: 6.6.2015

Репутация: нет
Всего: нет



Есть 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}}, {}, {}, {}, {}]

начал писать запутался в циклах, просьба помочь
PM MAIL   Вверх
Oldshelf
Дата 31.10.2023, 04:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 160
Регистрация: 22.4.2018

Репутация: нет
Всего: 4



Python не знаю. Попробую подсказать в общем.

1. Пройтись циклом по первому массиву и запомнить все ключи в отдельный массив. Потом то же сделать со вторым и если ключа нет, добавить в общий массив.
2. Пройтись по всем ключам массива ключей. Запросить длины подмассивов первого и второго массивов для этих ключей. Если длина одного из подмассивов больше или равна длине другого подмассива, начать перебор его элементов, добавляя значения из другого подмассива, либо оставляя прежние значения, когда лимит другого подмассива будет превышен. Результат сложения запоминать в общий массив, присваивая пустым до этого ключам.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0820 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.