Задать вопрос
Ответы пользователя по тегу Python
  • Как найти сумму элементов словаря вложенного в список?

    @aidar420
    sum([sum(lst_element.values()) for lst_element in lst])

    поэтапно:
    [lst_element for lst_element in lst] выведет
    [{1: 11, 2: 12, 3: 13}, {1: 21, 2: 22, 3: 23}, {1: 24, 2: 25, 3: 26}]
    (список всех элементов списка lst)
    У словарей есть методы: values() выводит список значений словаря, keys() - ключей, items() - список кортежей пар ключ-значение.
    поэтому применяем values(), получаем список списков:
    [lst_element.values() for lst_element in lst]
    [([11, 12, 13]),
     ([21, 22, 23]),
    ([24, 25, 26])]
    (на самом деле там чуть другой тип данных, но для простоты норм)
    дальше суммируем элементы в списках внутри списка
    [sum(lst_element.values()) for lst_element in lst]
    [36, 66, 75]
    и суммируем значения этого списка
    sum([sum(lst_element.values()) for lst_element in lst])
    Ответ написан
    Комментировать