有:
class Foo:
def __init__(self, a, b):
self.a = a
self.b = b
和一个类似的列表:
l = [Foo(1, 2), Foo(1, 3), Foo(1, 4), Foo(1, 10)]
如果我想计算具有 == 1 的对象的数量,我会
>>> count_a = len([o for o in l if o.a == 1])
>>> assert count_a == 4
它不是库中允许我执行以下操作的函数:
>>> from operator import attrgetter
>>> count(l, key=attrgetter('a'))
4