구조를 미리 알 수 없는 딕셔너리 만들기
중첩된 데이터를 담을 구조가 필요한데 모든 키가 실제로 존재하는지 확신할 수 없을 때가 있어요. 특정 키에 대해 리스트에 항목을 추가하려고 하면 문제가 될 수 있죠. 영상에서 살펴본 NYC 데이터를 기억하시나요? 일반 딕셔너리로 이 문제를 해결하려면, 딕셔너리에 키가 있는지 확인하고 없으면 빈 리스트와 함께 추가해야 합니다.
이번에는 연구에서 수집한 암컷 펭귄의 종, 지느러미 길이, 체질량, 성별이 담긴 항목 리스트로 작업합니다. 같은 유형의 문제를 다음 연습 문제에서는 훨씬 간단한 방법으로 풀어 볼 거예요.
이 연습은 강의의 일부입니다
Python의 데이터 타입
연습 안내
female_penguin_weights라는 이름의 빈 딕셔너리를 만드세요.weight_log를 반복(iterate)하면서species,sex,body_mass변수로 언패킹하세요.female_penguin_weights딕셔너리에 해당 종(species) 키가 이미 있는지 확인하세요. 없다면 그 종 키에 대해 빈 리스트를 만드세요. 그런 다음weight_log의 모든 항목에 대해female_penguin_weights의 해당species키에sex와body_mass로 이루어진 튜플을 추가하세요.'Adlie'의female_penguin_weights를 출력하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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(____)