이전 버전의 Python에서는 사전의 키 순서를 예측할 수 없는 경우가 많았습니다. 이로 인해 데이터에 액세스할 때 혼란과 일관되지 않은 결과가 발생할 수 있습니다.
Python 3.6 이전에는 사전의 키 순서가 다음과 같았습니다. 키의 해시 값에 따라 결정됩니다. 이는 값이 동일하게 유지되더라도 시간이 지남에 따라 키의 순서가 변경될 수 있음을 의미합니다. 예를 들어, 제공한 코드 블록에서
d = {'a': 0, 'b': 1, 'c': 2} l = d.keys() print(l)
결과 목록 l의 키 순서는 ['a', 'c', 'b']입니다. 이 순서는 보장되지 않으며 향후 루프 반복에서 변경될 수 있습니다.
키 순서가 유지되도록 하려면 여러 접근 방식을 사용합니다. 사용할 수 있습니다:
Python 3.7부터 사전은 기본적으로 삽입 순서를 유지합니다. 즉, 보존되는 키의 순서에 의존할 수 있습니다.
Python 3.6의 CPython 구현의 경우 사전도 유지 관리됩니다. 기본적으로 삽입 순서입니다. 그러나 이 동작은 구현에 따라 다르며 다양한 Python 구현에서 보장되지 않습니다.
3.6 이전 Python 버전에서 키 순서를 적용하려면 , collections.OrderedDict 클래스를 사용할 수 있습니다. 이 클래스는 키가 삽입되는 순서를 특별히 유지합니다.
from collections import OrderedDict d = OrderedDict({'a': 0, 'b': 1, 'c': 2}) print(list(d.keys())) # Output: ['a', 'b', 'c']
위 내용은 Python 사전에서 키 순서를 어떻게 유지합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!