>백엔드 개발 >파이썬 튜토리얼 >파이썬에서 사전을 정렬하는 방법

파이썬에서 사전을 정렬하는 방법

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼원래의
2019-08-02 10:12:083798검색

파이썬에서 사전을 정렬하는 방법

파이썬에서 사전을 정렬하는 방법은 무엇인가요?

사전을 정렬하시겠습니까? 이것은 실제로 잘못된 제안입니다. Python 사전의 정의를 알아보세요. 사전 자체는 기본적으로 키의 문자 순서로 출력되고 표시됩니다. 우리가 사용하는 실제 사전과 마찬가지로 키의 순서로 정렬됩니다. ABCD 문자, 그리고 본질적으로 각각 순서 관계가 없으며 해시 테이블 구조입니다.

그러나 실제 응용 프로그램에서는 정렬에 대해 이런 종류의 "필요"가 있습니다. -----값 값에 따라 출력을 "정렬"하거나 다른 이상한 순서로 출력하면 사전을 다음으로 변환하기만 하면 됩니다. 목록 또는 튜플, 사전에 있는 각 키 값 쌍을 두 자리 목록 또는 목록의 하위 튜플로 변환한 다음 출력하면 목표를 달성할 수 있습니다.

예:

d1 = {'a':1,'c':4,'b':2,'d':3}
d2 = {2:1,3:4,4:2,1:5,5:3}
d3 = {'01': {'name': '电脑', 'price': 3000}, '02': {'name': '鼠标', 'price': 50}, '03': {'name': '洗发水',
'price': 30}, '04': {'name': '微波炉', 'price': 998}, '05': {'name': '手机', 'price': 1500}}

관련 권장 사항 : "Python Video Tutorial"

요구 사항 1: 사전의 키/값에 따라 출력 정렬

방법 1: 정렬 기능 사용

sorted(d1.items(),key = lambda x:x[0],reverse = True)  # reverse = True:是递减顺序输出,不写默认是升序输出
key = lambda x:x[0]表示在d1.items()的输出内容中的第一列作为排序依据,如果是按照value排序则改成x[1]即可。

d1/d2 사전은 비교적 간단하고 이해하기 쉽습니다. .d3과 같은 중첩된 사전을 처리하는 방법을 살펴보겠습니다. 정렬:

sorted(d.items(),key=lambda x:x[1]['price'])

방법 2: 연산자 내장 모듈 사용

import operator
sorted(d1.items(),key = operator.itemgetter(1))

이 모듈의 현재 실험은 다음과 같은 데이터 구조에 성공하지 못했습니다. d3.

위 내용은 파이썬에서 사전을 정렬하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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