728x90
반응형
질문 : 'for'루프를 사용하여 사전 반복
다음 코드에 약간 의아해합니다.
d = {'x': 1, 'y': 2, 'z': 3}
for key in d:
print (key, 'corresponds to', d[key])
내가 이해하지 못하는 것은 key
부분입니다. 파이썬은 사전에서 키를 읽기만하면된다는 것을 어떻게 인식합니까? key
은 파이썬에서 특별한 단어입니까? 아니면 단순히 변수입니까?
답변
key
는 변수 이름입니다.
for key in d:
키와 값이 아니라 사전에있는 키를 단순히 반복합니다. 키와 값을 모두 반복하려면 다음을 사용할 수 있습니다.
Python 3.x의 경우 :
for key, value in d.items():
Python 2.x의 경우 :
for key, value in d.iteritems():
직접 테스트하려면 key
단어를 poop
변경하십시오.
Python 3.x에서 iteritems()
items()
()로 대체되었습니다 iteritems()
처럼 dict에 의해 뒷받침되는 세트와 같은 뷰를 반환하지만 더 좋습니다. viewitems()
로도 사용할 수 있습니다.
items()
작업은 2와 3 모두에서 작동하지만 2에서는 사전의 (key, value)
items()
호출 이후에 발생하는 dict에 대한 변경 사항을 반영하지 않습니다. 3.x에서 2.x 동작을 원하면 list(d.items())
호출 할 수 있습니다.
출처 : https://stackoverflow.com/questions/3294889/iterating-over-dictionaries-using-for-loops
728x90
반응형
'프로그래밍 언어 > Python' 카테고리의 다른 글
파이썬에서 "named tuples" 이란? (0) | 2021.09.15 |
---|---|
Python Interpreter에서 업데이트 된 패키지를 다시 가져 오는 방법 (0) | 2021.09.15 |
파이썬에서 스레딩을 사용하는 방법 (0) | 2021.09.14 |
Python 배열 마지막 항목 부터 탐색 하는 방법 (0) | 2021.09.13 |
Python으로 작성된 CSV 파일에 각 행 사이에 빈 줄이 있을 때 (0) | 2021.09.13 |