Создание словарей с неизвестной структурой
Иногда возникает необходимость хранить вложенные данные, и при этом нет уверенности, что все нужные ключи уже существуют. Это может стать проблемой, если вы пытаетесь добавить элементы в список по определённому ключу. Вы могли видеть похожий пример с данными по Нью-Йорку в видеоуроке. Чтобы решить эту задачу с обычным словарём, нужно проверить, есть ли ключ в словаре, и если нет — добавить его с пустым списком.
В этом упражнении вы будете работать со списком записей, содержащих вид особи, длину плавника, массу тела и пол самок пингвинов из нашего исследования. В следующем упражнении вы решите ту же задачу гораздо более элегантным способом.
Это упражнение является частью курса
Типы данных в Python
Инструкции к упражнению
- Создайте пустой словарь с именем
female_penguin_weights. - Выполните итерацию по
weight_log, распаковывая каждый элемент в переменныеspecies,sexиbody_mass. - Проверьте, существует ли вид особи в словаре
female_penguin_weights. Если он отсутствует, создайте пустой список для этого ключа. Затем добавьте кортеж изsexиbody_massпо ключуspeciesв словарьfemale_penguin_weightsдля каждой записи вweight_log. - Выведите значение
female_penguin_weightsдля'Adlie'.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Create an empty dictionary: female_penguin_weights
female_penguin_weights = ____
# Iterate over the weight_log entries
for ____, ____, ____ in ____:
# Check to see if species is already in the dictionary
if ____ not in ____:
# Create an empty list for any missing species
female_penguin_weights[species] = ____
# Append the sex and body_mass as a tuple to the species keys list
female_penguin_weights[species].____
# Print the weights for 'Adlie'
print(____)