강의로 돌아가기
엄주영

dict.update 문의

딱풀 가격이 모두 1400으로 나오는 점이 의문입니다.
어떤 기준으로 update가 되는걸까요?

products = {"풀":800, "딱풀":1200, "색종이":1000,"색연필":5000,"스케치북":3500}
catalog = {"겨울용 실내화":12000, "잠자리채":8000, "딱풀":1400}


products.update(catalog)
print(products)

catalog.update(products)
print(catalog)

실행 결과

출력 〉 

{'풀': 800, '딱풀': 1400, '색종이': 1000, '색연필': 5000, '스케치북': 3500, '겨울용 실내화': 12000, '잠자리채': 8000}
{'풀': 800, '딱풀': 1400, '색종이': 1000, '색연필': 5000, '스케치북': 3500, '겨울용 실내화': 12000, '잠자리채': 8000}

작성중인 코드―solution.py
1
2
3
4
5
products = {"풀":800, "딱풀":1200, "색종이":1000,"색연필":5000,"스케치북":3500}

catalog = {"겨울용 실내화":12000, "잠자리채":8000, "딱풀":1400}

products.update(catalog)
1 개의 답변
Demi

아마 마지막의 print(catalog)에서는 딱풀이 1200로 나와야하는 것 같은데, 1400이 나와서 질문을 하신거겠죠?

products = {"풀":800, "딱풀":1200, "색종이":1000,"색연필":5000,"스케치북":3500}
catalog = {"겨울용 실내화":12000, "잠자리채":8000, "딱풀":1400}


products.update(catalog)
print(products)

이 코드때문에 products는 {'풀': 800, '딱풀': 1400, '색종이': 1000, '색연필': 5000, '스케치북': 3500, '겨울용 실내화': 12000, '잠자리채': 8000} 로 바뀌었습니다,
따라서 catalog 를 product로 업데이트하면 당연히 딱풀은 1400이 되겠죠 :)

아무래래도 product 딕셔너리가 도중에 변경된 걸 잊으신 것 같네요,

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.