인프런 커뮤니티 질문&답변

코코님의 프로필 이미지
코코

작성한 질문수

Python 입문자를 위한 강의

Dictionary - 코딩 실습

dictionary 실습 질문

해결된 질문

작성

·

179

0

simon님 안녕하세요

dictionary 실습 강의 중 궁금한 것이 생겼는데요,

a['thing'] = a.pop('fruit')

을 실행하면 결과값이 'thing' : 'banana'가 되는 이유는 무엇인가요?

print(a.pop('fruit')을 실행하면 'banana'가 출력되는데

a['thing'] = 'banana' 이니까

바나나의 자리에 thing 이 되어야 하는 거 아닌가요?

thing이 바나나라는 value를 찾아 해당하는 key 값에 thing이 대입되는 과정이 궁금합니다!

답변 1

2

Sungmin Kim님의 프로필 이미지
Sungmin Kim
지식공유자

김다애님 안녕하세요. 

 

dictionary 를 만들때 

a = {"fruit":"banana", "quantity":10, "discount":True}

그럼 Key는 fruit, quantity, discount이고 Value는 banana, 10, True이죠?

그리고 질문주신내용이 

a["thing"] = a.pop("fruit")

이 코드죠? 그럼 한줄 한줄 해석해볼께요. 

 

a.pop("fruit") 를 돌리면 "banana"가 반환되면서 fruit:banana의 Key:Value 페어는 dictionary a에서 사라집니다. 

그럼 위 코드를 다음과 같이 해석할 수 있습니다.

a["thing"] = "banana"

banana는 사라졌지만 thing이라는 새로운 Key 이름으로 대처한다음 새로운 Key:Value페어를 넣는거기 때문에 다시 banana가 dictionary  a에 들어오는 거에요. 다만 이제는 Key가 fruit이 아닌 thing으로 바뀌는 거죠.

 

이렇게 pop 함수를 사용하여 Key이름을 바꿀 수 있어요. 또한  새로운 Key:Value 페어를 만들때 사용되어지는 문법이랍니다. 

 

도움이 되었으면 좋겠습니다! 또 궁금한점 있으면 알려주세요.감사합니다.

코코님의 프로필 이미지
코코

작성한 질문수

질문하기