首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python -如何按照指定的属性顺序对对象数组进行双重排序?

在Python中,可以使用sorted函数和operator模块来按照指定的属性顺序对对象数组进行双重排序。

首先,我们需要导入operator模块和定义对象数组:

代码语言:txt
复制
import operator

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

people = [
    Person("Alice", 25, 160),
    Person("Bob", 30, 175),
    Person("Charlie", 20, 150),
]

然后,我们可以使用sorted函数来按照指定属性排序。假设我们首先按照年龄进行升序排序,然后按照身高进行降序排序。代码如下:

代码语言:txt
复制
sorted_people = sorted(people, key=operator.attrgetter('age', 'height'), reverse=(False, True))

上述代码中,key参数指定了排序的属性,使用operator.attrgetter函数来获取属性值。reverse参数用于指定是否进行降序排序。

最后,我们可以遍历排序后的数组并输出结果:

代码语言:txt
复制
for person in sorted_people:
    print(person.name, person.age, person.height)

输出结果将会是:

代码语言:txt
复制
Charlie 20 150
Alice 25 160
Bob 30 175

对于这个问题,腾讯云并没有直接相关的产品和产品介绍链接地址。但是作为云计算平台,腾讯云提供了丰富的计算资源和开发工具,可以帮助开发者进行云原生应用的开发和部署。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券