본문 바로가기

Computer/Python

collections 모듈 (3) - OrderedDict

반응형

OrderedDict는 dict의 하위 클래스로서 입력 순서가 유지되는 딕셔너리입니다. 파이썬 3.6이전에는 딕셔너리의 입력 순서가 유지되지 않고 인터프리터를 실행시킬 때마다 내부의 random seed가 달라져 순서가 삽입 순서가 유지됮 않았지만 파이썬 3.7부터 입력 순서가 보존되도록 동작이 개선되었습니다.

OrderedDict

OrderedDict는 삽입 순서를 유지하기 위해 연결 리스트로 내부를 구성합니다.

딕셔너리의 하위 클래스이므로 딕셔너리가 지원하는 대부분의 메소드를 지원합니다. 

pop(key)

pop()은 딕셔너리에서 해당 키 원소를 제거합니다. OrderedDict는 순서를 유지하므로 중간의 키 값을 제거하여도 나머지 키 순서가 그대로 유지됩니다.

move_to_end(key, last=True (default))

해당 키를 맨 뒤나 맨 앞으로 보내는 메소드입니다. last 파라미터를 통해 맨 앞, 맨 뒤 여부를 결정할 수 있습니다.

홍머스 정리

  • 입력 순서를 유지하는 OrderedDict
  • 코딩 테스트에서는 파이썬 3.7이 아닐 수도 있으므로 필요한 경우 OrderedDict 사용하자

 

반응형

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

collections 모듈 (5) - deque  (0) 2021.02.28
collections 모듈 (4) - defaultdict  (0) 2021.02.28
collections 모듈 (2) - Counter  (0) 2021.02.26
collections 모듈 (1) - namedtuple  (0) 2021.02.25
파이썬 이진 탐색 내장 모듈 - bisect  (0) 2021.02.23