Python论坛  - 讨论区

标题:Python Cookbook 之 对象集合按照自定义属性排序

2014年03月18日 星期二 09:40

本篇和上一篇类似,一组对象的集合也可以按照指定属性来排序,比如我们使用User表示用户,age是User的一个属性,表示用户的年龄,我们可以根据age来对一组User进行排序。这里使用到了attrgetter方法。

代码示例如下:

class User:
    def __init__(self,uid):
        self.uid=uid
    def __repr__(self):
        return 'User({})'.format(self.uid)

users=[User(1009),User(1002),User(1005)]

from operator import attrgetter

sorted_users=sorted(users,key=attrgetter('uid'))
print(sorted_users)

参考资料:

http://docs.python.org/3/howto/sorting.html

http://docs.python.org/3/library/functions.html#sorted

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号