Поиск суммы всех элементов списка в списке, который имеет символы в 1 строке
87
7
ab = [ ['5','6','7','8','9','10'],['1','2','3'],['3','4','5']]
print sum([sum(int(x) for x in y for y in ab])])
Мне нужно найти сумму всех элементов в ab с помощью одного оператора печати. Я пытаюсь преобразовать каждый элемент каждого из списков в int и создать список, который имеет сумму каждого отдельного списка. Я получаю синтаксическую ошибку и не знаю, как это сделать.
спросил(а)
2021-01-19T19:16:25+03:00
2 месяца, 3 недели назад
добавить комментарий
пожаловаться
Решение
106
Вы определяете for
циклы для й (внутреннего контура) до того, как for
контура для у (внешний контур). Вот почему он не работает. Вам нужна print sum(int(x) for y in ab for x in y)
Также может быть лучше использовать генератор здесь, потому что вы не используете его повторно, поскольку он более эффективен.
ответил(а)
2021-01-19T19:16:25+03:00
2 месяца, 3 недели назад
добавить комментарий
пожаловаться
Ваш ответ
- Вопросы
- Python-2.7
- Поиск суммы всех элементов списка в списке, который имеет символы в 1 строке