콘텐츠로 건너뛰기

파이썬에서 딕셔너리 정렬하는 방법은 무엇인가요? (sort dict python)

[

파이썬 딕셔너리 정렬하기: 값, 키, 그리고 더 많은 것들

파이썬의 딕셔너리를 가지고 있지만, 키-값 쌍을 정렬하고 싶습니다. 아마 sorted() 함수에 딕셔너리를 전달해 보았지만 예상한 결과를 얻지 못했을 것입니다. 이 튜토리얼에서 파이썬에서 딕셔너리를 정렬하는 방법에 대해 알아보겠습니다.

이 튜토리얼에서는 다음을 배우게 됩니다:

  • sorted() 함수의 사용법 보기
  • 딕셔너리 에서 반복(iteration) 하는 방법 배우기
  • 딕셔너리가 정렬될 때 리스트로 변환되는 원리 이해하기
  • 값을, 키, 또는 중첩된 속성 기준에 따라 딕셔너리를 정렬하는 방법 배우기
  • 딕셔너리 컴프리헨션dict() 생성자를 사용하여 딕셔너리 다시 만들기
  • 키-값 데이터를 위한 대체 데이터 구조 고려하기

이 과정을 진행하면서 timeit 모듈을 사용하여 코드의 실행 시간을 측정하여 서로 다른 방법으로 키-값 데이터를 정렬하는데 사용할 수 있는 구체적인 결과를 얻게 될 것입니다. 또한 정렬된 딕셔너리가 실제로 가장 좋은 선택인지에 대해서도 고려해볼 것이며, 이는 특별히 흔한 패턴은 아닙니다.

우선, 딕셔너리를 정렬하기 전에 기본적인 지식을 익히겠습니다.

파이썬에서 딕셔너리의 순서 다시 확인하기

파이썬 3.6 이전에는 딕셔너리는 원래 정렬되지 않은 상태였습니다. 파이썬 딕셔너리는 전통적으로 정렬되지 않은 데이터 구조인 해시 테이블의 구현입니다.

이전에는 정렬된 딕셔너리를 데이터 구조로 유지하려면 collections 모듈의 OrderedDict 클래스를 사용해야 했습니다. 이제는 기본 딕셔너리도 삽입된 순서대로 유지되므로 OrderedDict을 사용할 필요가 없습니다.