나름 유용한 Dictionary 관련 모듈들
OrderedDict
- 기본 딕셔너리와 거의 비슷하지만, 입력된 아이템들의 순서를 기억하는 Dictionary 클래스
- 데이터를 입력한 순서대로 반환
- collections로 부터 import 하여 사용
- 내용은 같지만 순서가 다른 객체는
== 연산자에서도 false 반환
- key, value를 정렬할 때 사용 가능
OD = OrderedDict(sorted(d.items(), key = lambda t : t[0]))
method
- Update()({newkey : new value})
update()는 OrderedDict에 새로운 멤버를 추가하는 함수이다.
- popitem(last = True)
popitem은 OrderedDict의 아이템을 반환 및 삭제하는 함수이다.
인자인 last에 따라 결과가 다르다. (기본값은 last = true이다.)
last == True -> LIFO
last == False -> FIFO
- move_to_end(key, last = True)
move_to_end()는 key값에 해당되는 아이템을 OrderedDict의 맨 뒤 혹은 맨 앞으로 이동시키는 함수이다.
last == True -> 맨 뒤로 이동
last == False -> 맨 앞으로 이동
defaultdict
- 모든 key에 대해 기본(default) 값을 설정할 수 있는 dictionary 서브 클래스
- 선언
DD = defaultdict(value type)
- 선언 시 해당 자료형의 기본값(
0, "", False, [])로 설정
- 없는 key에 접근할 때 KeyError 발생 X -> 기본값으로 생성
- 나는 주로 value를 카운트 값으로 사용할 때 해당 모듈 사용