按照对象属性和排序参数对列表进行排序
创始人
2024-08-23 19:00:39
0

在Python中,可以使用sorted()函数对列表进行排序。sorted()函数接受一个可迭代对象作为参数,并返回一个新的已排序的列表。我们可以使用key参数来指定排序的规则。

下面是一个示例代码,展示了如何按照对象属性和排序参数对列表进行排序:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __repr__(self):
        return f"Person(name='{self.name}', age={self.age})"

# 创建一个包含Person对象的列表
people = [
    Person("Alice", 25),
    Person("Bob", 30),
    Person("Charlie", 20)
]

# 按照年龄升序排序
sorted_people = sorted(people, key=lambda p: p.age)
print(sorted_people)

# 按照年龄降序排序
sorted_people = sorted(people, key=lambda p: p.age, reverse=True)
print(sorted_people)

在上面的示例中,我们定义了一个Person类,它有两个属性:nameage。我们创建了一个包含Person对象的列表people。然后,我们使用sorted()函数对people列表进行排序,指定key参数为一个lambda函数,该函数返回对象的age属性。这样就可以按照年龄对列表进行排序。

在第一个sorted()函数调用中,我们没有指定reverse参数,默认为False,所以列表按照升序排序。在第二个sorted()函数调用中,我们指定reverse=True,所以列表按照降序排序。

输出结果为:

[Person(name='Charlie', age=20), Person(name='Alice', age=25), Person(name='Bob', age=30)]
[Person(name='Bob', age=30), Person(name='Alice', age=25), Person(name='Charlie', age=20)]

注意,sorted()函数返回一个新的已排序的列表,原列表的顺序并没有改变。如果你想在原地对列表进行排序,可以使用列表的sort()方法。

相关内容

热门资讯

外挂指引!xpoker辅助怎么... 外挂指引!xpoker辅助怎么用,xpoker辅助控制-果然是有辅助教程(哔哩哔哩)1、任何xpok...
外挂练习!红龙poker有辅助... 外挂练习!红龙poker有辅助吗,约局吧德州真的存在透视吗-竟然是有辅助方法(哔哩哔哩)1、玩家可以...
外挂演示!拱趴大菠萝自动计算机... 外挂演示!拱趴大菠萝自动计算机器人,智星菠萝辅助-切实一直总是有辅助教程(哔哩哔哩)一、拱趴大菠萝自...
外挂模板!德扑之心免费透视,德... 外挂模板!德扑之心免费透视,德州局怎么透视-一贯一直都是有辅助工具(哔哩哔哩)在进入德州局怎么透视软...
外挂模板!wepoker安装教... 外挂模板!wepoker安装教程,线上德州的辅助器是什么-其实存在有辅助教程(哔哩哔哩)暗藏猫腻,小...
外挂要领!sohoo poke... 外挂要领!sohoo poker辅助器,werplan有挂吗-都是一直都是有辅助插件(哔哩哔哩)1)...
外挂指南书!拱趴大菠萝万能辅助... 外挂指南书!拱趴大菠萝万能辅助器,约局吧作必弊脚本-总是有辅助教程(哔哩哔哩)1、拱趴大菠萝万能辅助...
外挂模板!智星菠萝德州插件最新... 外挂模板!智星菠萝德州插件最新版本更新内容详解,aa poker辅助包-确实是真的有辅助脚本(哔哩哔...
外挂机巧!拱趴大菠萝自动计算机... 外挂机巧!拱趴大菠萝自动计算机器人,aa poker辅助包-总是一直总是有辅助教程(哔哩哔哩)1、任...
外挂讲义!佛手在线是不是有挂,... 外挂讲义!佛手在线是不是有挂,竞技联盟透视插件-一贯真的是有辅助攻略(哔哩哔哩)1、玩家可以在佛手在...