繁体   English   中英

python按包含列表的长度对对象列表进行排序

[英]python sort list of objects by length of a containing list

我有一个包含两个列表的类,一个int和一个字符串..看起来像这样

class Something:
    num = 0

    def __init__(self, clu, pro)
        self.clu = clu
        self.rep = []
        self.rep_dis = []
        self.pro = ""

现在在我的主目录中,我保留了Something对象的列表。

something_list = []
tmp_something = Something("this", "that")
tmp_something.rep.append("some")
tmp_something.rep_dis.append("thing")
something_list.append(tmp_something)

如何按对象列表rep的长度对该列表进行排序?

编辑:代码段格式

“如何按...对对象列表进行排序”的答案始终是“使用key参数进行sort ”。 在这种情况下:

something_list.sort(key=lambda x: len(x.rep))

key参数是为列表中的每个项目调用的函数,并且应返回要根据其排序的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM