использовать int для «x» и словарь для «y». Таким образом,

аюсь написать простую функцию Python, которая суммирует все значения, которые имеют ключ какнравится, Я работаю с функциональным программированием для этого задания. Таким образом, я должен использовать либоСписок постижение, map, filter, или жеreduce, В этом случае я вижу уменьшение как разумный вариант.

def sum_favorites(msgs):
     num_favorites = reduce(lambda x, y: x["likes"] + y["likes"], msgs)
     return num_favorites


content1 = {"likes": 32, ...}
content2 = {"likes": 8, ...}
content3 = {"likes": 16, ...}
contents = [content1, content2, content3]
print(sum_favorites(contents)) 

Проблема возникает, когда я действительно запускаю код. Я, кажется, получаю что-то вроде:TypeError: объект 'int' не может быть подписан, Для меня эта ошибка не имеет смысла. Еслиreduce действительно перебирает данный параметр, тогда каждый элемент, переданный в лямбда-функцию, должен быть словарем - и каждый из них определенно имеетнравится ключ в них. В чем проблема, и что именно означает эта ошибка Python?

Ответы на вопрос(5)

Ваш ответ на вопрос