使用特定方法对对象的嵌套列表进行排序

时间:2018-07-25 14:28:34

标签: python python-3.x object

说我有一个嵌套的对象列表,这些对象具有一个称为get_name()的方法,该方法为您提供对象的名称,并且您必须按字母顺序对列表进行排序。

my_list = [[obj1, obj2, obj3], [obj4, obj5, obj6], [obj7, obj8]]

但是我不知道如何使它与对象列表一起使用,特别是使用get_name()作为要使用的主要方法,还必须假定仅对列表中的列表进行排序。

感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

简单的for循环怎么样?

comparator = lambda obj: obj.get_name()
for sub_list in my_list:
    sub_list.sort(key=comparator)

答案 1 :(得分:1)

它可能很简单:

for sub in my_list:
    sub.sort(key=MyClass.get_name)

这将使用get_name()的结果来确定顺序对每个子列表进行排序。