Ошибка ключа словаря Python при использовании вложенных цикловPython

Программы на Python
Ответить
Anonymous
 Ошибка ключа словаря Python при использовании вложенных циклов

Сообщение Anonymous »

Я пытаюсь подсчитать появление элементов во вложенных словарях, но постоянно получаю ошибку KeyError.
Вот мой код:

Код: Выделить всё

data = [
{"name": "Alice", "items": ["apple", "banana"]},
{"name": "Bob", "items": ["banana", "orange"]},
{"name": "Alice", "items": ["orange"]}
]

counts = {}
for entry in data:
for item in entry["items"]:
counts[entry["name"]][item] += 1
Ошибка:
KeyError: 'Alice'
Что я пробовал:
Использование counts.get(entry["name"])
Инициализация counts[entry["name"]] = {} перед внутренним циклом
Вопрос:
Как я могу правильно подсчитать количество вхождений каждого элемента для каждого человека, не получая KeyError?

Подробнее здесь: https://stackoverflow.com/questions/798 ... sted-loops
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»