본문 바로가기

Computer/Python

collections 모듈 (4) - defaultdict

반응형

defaultdict는 딕셔너리의 하위 클래스로 딕셔너리와의 차이점은 defaultdict는 키 값이 존재하지 않을 때 초기값이 자동으로 세팅된다는 점입니다. 일반 딕셔너리는 키 값이 존재하지 않는다면 KeyError를 일으킵니다.

이 초기값의 경우 defaultdict를 어떻게 설정하느냐에 따라 달라집니다. int의 경우 0, list의 경우 빈 리스트가 존재하지 않는 키 값에 대해 자동으로 세팅됩니다.

리스트

초기값을 리스트로 처리할 경우 존재하지 않는 키에 대해서도 리스트 연산을 수행할 수 있습니다.

세트

초기값을 세트로 처리할 경우 존재하지 않는 키에 대해서 세트 연산을 수행할 수 있습니다.

함수

초기값을 함수로 할 수도 있습니다.

홍머스 정리

  • 딕셔너리와 거의 같다. 키가 없는 경우에도 KeyError를 raise하지 않고 디폴트로 세팅된 초기값을 return함
  • 초기값 형태는 리스트, int, 세트 등으로 다양하게 지정 가능
반응형

'Computer > Python' 카테고리의 다른 글

itertools 모듈  (0) 2021.03.02
collections 모듈 (5) - deque  (0) 2021.02.28
collections 모듈 (3) - OrderedDict  (0) 2021.02.27
collections 모듈 (2) - Counter  (0) 2021.02.26
collections 모듈 (1) - namedtuple  (0) 2021.02.25