>백엔드 개발 >파이썬 튜토리얼 >Python 사전을 키별로 정렬하는 방법은 무엇입니까?

Python 사전을 키별로 정렬하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-23 19:09:15728검색

How to Sort a Python Dictionary by Keys?

Python을 사용하여 사전을 정렬하는 방법

Python의 사전은 순서가 지정되지 않은 데이터 구조입니다. 그러나 키를 기준으로 사전을 정렬해야 하는 경우가 있습니다.

입력 예:

{2:3, 1:89, 4:5, 3:0}

원하는 출력:

{1:89, 2:3, 3:0, 4:5}

표준 파이썬 사전

표준 Python 사전은 Python 버전 3.7부터 키 순서만 유지합니다. 버전 3.7 이전에는 sorted(d.items()) 함수를 사용하면 이러한 사전이 정렬된 쌍의 순서를 유지하지 않기 때문에 원하는 결과를 얻을 수 없습니다.

OrderedDict

Python 3.7 이전 버전의 경우 해결책은 다음을 사용하는 것입니다. collections 모듈의 OrderedDict 클래스입니다. 이 클래스는 삽입된 순서대로 키-값 쌍을 저장하여 일관된 순서를 보장합니다.

import collections

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

# Create an OrderedDict from sorted key-value pairs
od = collections.OrderedDict(sorted(d.items()))

print(od)

출력:

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

Python 3

Python 버전 3 이상의 경우 .items() .iteritems():

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

출력:

1 89
2 3
3 0
4 5
대신 메소드를 사용해야 합니다.

위 내용은 Python 사전을 키별로 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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