list集合中对象根据固定的顺序进行排序
时间: 2023-07-22 13:05:34 浏览: 48
要对一个list集合中的对象根据固定的顺序进行排序,可以使用Python内置的sorted函数,结合key参数来实现。key参数可以接受一个函数作为参数,这个函数会被用来指定排序的关键字。
下面是一个示例代码,假设我们有一个Person类的对象列表,需要按照年龄、身高、姓名的顺序进行排序:
```python
class Person:
def __init__(self, name, age, height):
self.name = name
self.age = age
self.height = height
people = [
Person("Alice", 25, 165),
Person("Bob", 30, 180),
Person("Charlie", 20, 170),
]
# 按照年龄、身高、姓名的顺序进行排序
sorted_people = sorted(people, key=lambda p: (p.age, p.height, p.name))
for person in sorted_people:
print(person.name, person.age, person.height)
```
输出结果为:
```
Charlie 20 170
Alice 25 165
Bob 30 180
```
在lambda函数中,我们返回了一个元组,元组中包含了按照年龄、身高、姓名的顺序排列的三个关键字。sorted函数会按照这个元组的顺序对对象列表进行排序。
相关推荐
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)