자료구조에 논리를 얹다
기본 딕셔너리를 넘어, 이번엔 조건문·반복문과 결합하는 문제들을 풀었다. 자료구조는 데이터를 담는 그릇일 뿐이고 결국 흐름 제어가 그 그릇을 쓸모 있게 만든다는 걸 체감했다.
딕셔너리와 if의 만남
가게 물품을 {이름: 가격} 으로 저장해두고 사용자가 입력한 이름의 가격을 알려주는 로직. 없는 물건을 입력하면 실행을 중단하도록 조건을 걸었다.
store = {"사과": 1000, "바나나": 1500}
name = input("물건 이름: ")
if name in store:
print(f"{name}의 가격은 {store[name]}원입니다.")
else:
print("판매하지 않는 물건입니다.")in 연산자로 키 존재 여부를 먼저 확인하는 습관이 중요했다.
중첩 구조 다루기
- 딕셔너리 값으로 리스트를 넣어 물품 목록을 확장
- 딕셔너리 값으로 또 다른 딕셔너리를 넣어 학생별 과목·점수 표를 표현
for key, value in dict.items():로 중첩 구조를 순회하며 원하는 값만 뽑아내기