파이썬(python) 딕셔너리(dict)의 원소를 순차적으로 할당했을 경우, 파이썬 과거 버전을 사용할 경우 순서가 보존되지 않는다. 기준이 되는 버전은 3.6이다.
파이썬 버전 3.7 이후부터는 원소를 순차적으로 할당하면 그 순서가 보존되나, 3.6 이전 버전에서는 순서를 보장하지 않는다. 예를 들어 아래의 코드를 실행할 경우, for 반복문에 의해 출력되는 원소의 순서가 버전 3.6 이하와 3.7 이상에서 다를 수 있다는 것이다. 버전 3.7 이상에서 순서가 보존된다.
x = {}
x['a'] = 1
x['b'] = 2
x['c'] = 3
for key in x:
print(key, ':', x[key])
만약 파이썬 버전이 3.6 이하인 환경에서 딕셔너리의 순서를 보장하고 싶다면 아래의 예시처럼 OrderedDict를 사용해야 한다.
x = OrderedDict()
x['a'] = 1
x['b'] = 2
x['c'] = 3
for key in x:
print(key, ':', x[key])
728x90
'파이썬(python)' 카테고리의 다른 글
파이썬 배포판 아나콘다(anaconda)/미니콘다(miniconda) 과거 버전 다운로드하기 (0) | 2025.04.03 |
---|---|
파이썬(python)을 이용해서 이메일(eml) 파일의 본문 확인 - 2 (0) | 2025.03.08 |
파이썬(python)을 이용해서 이메일(eml) 파일의 보낸 사람, 받는 사람, 제목 확인 - 2 (0) | 2025.03.06 |
파이썬(python)에서 리스트에 저장된 문자열들을 하나로 합치기 (0) | 2025.02.06 |
파이썬(python)에서 텍스트 파일을 열 때 UnicodeDecodeError 발생 문제 해결 (0) | 2025.01.11 |