더북(TheBook)

1.3 dict.items( )가 필요할 경우 dict.keys( )로 순환하지 않기

파이썬의 목록과 색인 위치와 값의 사상(mapping)을 거의 동일시하는 경우가 있습니다. 사전(dictionary)에서 정수는 완벽히 키(key)로 취급될 수 있으므로, obj[7]dict나 다른 사상에 대한 색인일 수도 있고, list나 다른 연속 순서열(sequence)에 대한 색인일 수도 있습니다.

마찬가지로 다음과 같이 파이썬답지 않은 코드를 가끔 볼 수 있습니다. 목록의 색인 위치를 순환하면서 데이터 안에서 그 색인에 해당하는 값을 찾는 코드나, 마찬가지로 dict.keys()를 순환하는 코드입니다. 사실 조금만 더 거슬러 올라가면 방금 언급한 두 가지 형식상의 잘못이 있습니다. 다음 코드를 한 번 살펴봅시다.

for key in my_dict.keys():
    process(key, my_dict[key])
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.