我想在该类对象的列表中总结一个类对象的实例变量。
Class A(object):
def __init__(self):
self.a = 20
B = []
for i in range(10):
B.append(A())
# Can this be made more pythonic?
sum = 0
for i in B:
sum += i.a
我正在考虑使用地图功能或其他什么?不知道这是不是太过分了。好奇。
答案 0 :(得分:3)
class A(object):
def __init__(self):
self.a = 20
B = []
for i in range(10):
B.append(A())
s = sum(i.a for i in B)
print s
的工作原理。
答案 1 :(得分:2)
您可以使用reduce
reduce(lambda acc, c: acc + c, [i.a for i in B])
理解或sum()
sum([i.a for i in B])