>백엔드 개발 >파이썬 튜토리얼 >Python에서 정렬할 때 사전 키 순서를 어떻게 유지할 수 있나요?

Python에서 정렬할 때 사전 키 순서를 어떻게 유지할 수 있나요?

DDD
DDD원래의
2025-01-04 22:12:43976검색

How Can I Maintain Dictionary Key Order When Sorting in Python?

Python에서 사전 순서 유지

Python의 사전은 본질적으로 순서가 없으므로 키를 정렬하기가 어렵습니다. 이 문서에서는 키를 기준으로 사전을 정렬하는 방법을 살펴봅니다.

표준 사전

표준 Python 사전은 (키, 값) 쌍에 대해 특정 순서를 유지하지 않습니다. 파리를 정렬하면 사전의 예측할 수 없는 순서가 변경됩니다.

OrderedDict: 솔루션

dict의 하위 클래스인 OrderedDict 클래스가 이 문제를 해결합니다. 요소의 삽입 순서를 기억하여 정렬 후에도 키가 순서대로 유지되도록 합니다.

import collections

# Sample dictionary
d = {2: 3, 1: 89, 4: 5, 3: 0}

# Create an OrderedDict with sorted keys
od = collections.OrderedDict(sorted(d.items()))

# Print the sorted OrderedDict
print(od)

출력:

OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)])

값 액세스

정렬된 키에도 불구하고 OrderedDict는 값에 대해 예상되는 동작을 유지합니다. access.

print(od[1])  # Prints 89
print(od[3])  # Prints 0

반복

OrderedDict를 통한 반복은 정렬된 키 순서를 유지합니다.

for k, v in od.items():
    print(k, v)

출력:

1 89
2 3
3 0
4 5

파이썬 3

Python 3에서는 항목 반복을 위해 업데이트된 구문을 사용합니다.

for k, v in od.items():
    print(k, v)

위 내용은 Python에서 정렬할 때 사전 키 순서를 어떻게 유지할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.