Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

람다 함수를 사용하여 Python에서 값으로 사전 목록을 정렬하는 방법

<시간/>

값을 기준으로 사전 목록을 정렬해야 하는 경우 람다 함수를 사용할 수 있습니다.

아래는 동일한 데모입니다 -

예시

from operator import itemgetter

my_list = [{ "name" : "Will", "age" : 56},
          { "name" : "Rob", "age" : 20 },
          { "name" : "Mark" , "age" : 34 },
          { "name" : "John" , "age" : 24 }]

print("The list sorted by age is : ")
print(sorted(my_list, key=lambda i: i['age']))

print("The list sorted by age and name is : ")
print(sorted(my_list, key=lambda i: (i['age'], i['name'])))

print("The list sorted by age in descending order is : ")
print(sorted(my_list, key=lambda i: i['age'],reverse=True))

출력

The list sorted by age is :
[{'name': 'Rob', 'age': 20}, {'name': 'John', 'age': 24}, {'name': 'Mark', 'age': 34}, {'name': 'Will',
'age': 56}]
The list sorted by age and name is :
[{'name': 'Rob', 'age': 20}, {'name': 'John', 'age': 24}, {'name': 'Mark', 'age': 34}, {'name': 'Will',
'age': 56}]
The list sorted by age in descending order is :
[{'name': 'Will', 'age': 56}, {'name': 'Mark', 'age': 34}, {'name': 'John', 'age': 24}, {'name': 'Rob',
'age': 20}]

설명

  • 사전 요소 목록이 정의되어 콘솔에 표시됩니다.

  • sorted 방식을 사용하며 키는 'lambda'로 지정됩니다.

  • 사전 목록은 두 개의 매개변수로 람다를 사용하여 다시 정렬됩니다.

  • 출력은 콘솔에 표시됩니다.