Sorting has always been a useful utility in day-to-day programming. Dictionary in Python is widely used in many applications ranging from competitive domain to developer domain(e.g. handling JSON data). Having the knowledge to sort dictionaries according to its values can prove useful in such cases.
There are 2 ways to achieve this sorting:
1.) Using lambda function:-
This article deals with sorting using the lambda function and using “sorted()” inbuilt function. Various variations can also be achieved for sorting the dictionaries.
Python
# Python code demonstrate the working of # sorted() with lambda # Initializing list of dictionaries lis = [{ "name" : "Nandini", "age" : 20}, { "name" : "Manjeet", "age" : 20 }, { "name" : "Nikhil" , "age" : 19 }] # using sorted and lambda to print list sorted # by age print "The list printed sorting by age: " print sorted(lis, key = lambda i: i['age']) print ("\r") # using sorted and lambda to print list sorted # by both age and name. Notice that "Manjeet" # now comes before "Nandini" print "The list printed sorting by age and name: " print sorted(lis, key = lambda i: (i['age'], i['name'])) print ("\r") # using sorted and lambda to print list sorted # by age in descending order print "The list printed sorting by age in descending order: " print sorted(lis, key = lambda i: i['age'],reverse=True)
Output:
The list printed sorting by age: [{'age': 19, 'name': 'Nikhil'}, {'age': 20, 'name': 'Nandini'}, {'age': 20, 'name': 'Manjeet'}] The list printed sorting by age and name: [{'age': 19, 'name': 'Nikhil'}, {'age': 20, 'name': 'Manjeet'}, {'age': 20, 'name': 'Nandini'}] The list printed sorting by age in descending order: [{'age': 20, 'name': 'Nandini'}, {'age': 20, 'name': 'Manjeet'}, {'age': 19, 'name': 'Nikhil'}]
Next Article -> Ways to sort list of dictionaries by values in Python – Using itemgetter
Australia
UK
UAE
Singapore
Canada
New
Zealand
Malaysia
USA
India
South
Africa
Ireland
Saudi
Arab
Qatar
Kuwait
Hongkong
Copyright 2016-2023 www.programmingshark.com - All Rights Reserved.
Disclaimer : Any type of help and guidance service given by us is just for reference purpose. We never ask any of our clients to submit our solution guide as it is, anywhere.