Get the App
SLTechnology News&Howtos  ›  Development  › 

How python sorts objects by multiple key values

Shulou Source: shulou.com Published: 2022-06-01 05:16:22 09月11日 Update

This article mainly introduces how python sorts objects through multiple keys, which has a certain reference value, and interested friends can refer to it. I hope you can learn a lot after reading this article.

Sort objects by multiple key values

Suppose you want to sort the following dictionary list:

People = [{'name':' John', "age": 64}, {'name':' Janet', "age": 34}, {'name':' Ed', "age": 24}, {'name':' Sara', "age": 64}, {'name':' John', "age": 32}, {'name':' Jane', "age": 34} {'name':' John', "age": 99},]

Sort not only by name or age, but also by both fields. In SQL, the query would look like this:

SELECT * FROM people ORDER by name, age

In fact, the solution to this problem can be very simple, and Python ensures that the sort function provides a stable sort order, which means that more similar items will retain their original order. To sort by name and age, you can do this:

Import operator people.sort (key=operator.itemgetter ('age')) people.sort (key=operator.itemgetter (' name'))

Pay attention to how to reverse the order. Sort by age first, then by name, and use operator.itemgetter () to get the age and name fields from each dictionary in the list, so you'll get the results you want:

[{'name':' Ed', 'age': 24}, {' name': 'Jane',' age': 34}, {'name':' Janet','age': 34}, {'name':' John', 'age': 32}, {' name': 'John',' age': 64}, {'name':' John', 'age': 99}, {' name': 'Sara' 'age': 64}]

The name is the main sort item, and if the name is the same, it is sorted by age. Therefore, all John are grouped together by age.

Thank you for reading this article carefully. I hope the article "python how to sort objects by multiple keys" shared by the editor will be helpful to you. At the same time, I also hope you will support us and pay attention to the industry information channel. More related knowledge is waiting for you to learn!

Tags: Sort age name article multiple object order simultaneously dictionary field classification original similar same two value interest function name actual Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno MySQL vpn Shulou Tech Info macOS Shulou Information