class A:
def __init__():
self.a = 0
self.b = 0
self.c = 0
l = [object1 of A, object2 of A, object3 of A]
l = sorted(l, key=somefunc)
该列表包含每个实例的a,b,c的单独值。我将使用一个使用属性a的自定义函数进行排序,但我希望它返回一个仅包含属性c的值的新列表(当然按排序顺序)。
答案 0 :(得分:0)
首先提取值,然后排序。
objects_to_sort = [x.c for x in l]
objects_to_sort.sort()
请注意,由于您的列表现在只包含属性,因此不需要键功能。
答案 1 :(得分:0)
您必须采取两个步骤,先排序,然后提取您选择的属性:
[o.c for o in sorted(l, key=somefunc)]