我们可以使用sort()函数来对对象列表进行排序。该函数接受一个可选的key参数,该参数允许我们指定一个函数来从每个对象中提取一个值,该值用于排序。
以下是一个示例代码,演示如何按对象的age属性(按降序)排序:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return repr((self.name, self.age))
people = [Person('Alice', 25), Person('Bob', 20), Person('Charlie', 30)]
# 按 age 属性排序,降序
sorted_people = sorted(people, key=lambda x: x.age, reverse=True)
print(sorted_people)
# [('Charlie', 30), ('Alice', 25), ('Bob', 20)]
在此示例中,我们创建了一个Person类来表示人员,然后创建了一个people列表,其中包含三个Person对象。我们可以使用sorted()函数按照每个对象的age属性进行降序排序,使用lambda函数来指定排序依据。最后,我们打印出排序后的列表,以验证结果。
上一篇:按特定值筛选,创建子列表