입력 순서를 기억하는 Dictionary[OrderedDict]
2021. 8. 19. 13:01ㆍ프로그래밍 개발(Development)/Python
반응형
Python을 개발하다보면 dictionary를 사용하는 경우가 많다.
많이 사용하는 방법 중의 하나가 아래와 같은 방법으로 많이 쓰이지만, x ,y, x key 값의 순서는 보존되지 않는다.
test = {}
test['x'] = 'x1'
test['y'] = 'y2'
test['z'] = 'z3'
for k, v in test.items():
print (k, v)
결과를 보면 입력은 x, y, z 순이지만 결과는 y, x, z 순으로 순서의 개념이 없다.
그래서 사용되는 collections 라이브러리의 OrderedDict 클래스를 사용할 경우
입력 순서를 기억하여, 그대로 출력을 하게 된다.
from collections import OrderedDict
test = OrderedDict()
test['x'] = 'x1'
test['y'] = 'y2'
test['z'] = 'z3'
for k, v in test.items():
print (k, v)
※ 파이썬 버전 3.7 이후 부터는 표준 dict 에서도 입력 순서를 보존하지만, 그 이하 버전에서는 순서를 보존하기 위해선 collections 라이브러리의 OrderedDict 클래스를 사용해야 합니다.
반응형
'프로그래밍 개발(Development) > Python' 카테고리의 다른 글
Python MultiProcessing Pool사용법 (2) | 2021.08.24 |
---|---|
Python sort by value in dictionary list (0) | 2021.06.08 |
Python IP 정보 확인 하는 방법 (0) | 2020.12.01 |
Python List 값 중복 제거(Remove duplicate python list) (0) | 2020.10.19 |