2010-08-18 67 views
3

我想要一个单线程解决方案在下面的代码Python但如何?python单线程

total = 0 
for ob in self.oblist: 
    total+=sum(v.amount for v in ob.anoutherob) 

它返回总价值。我想它一个衬垫,PLZ任何一个可以帮助我

回答

21

无需对sum()通话加倍

total = sum(v.amount for ob in self.oblist for v in ob.anotherob) 
5

您只需折叠for循环到理解的另一个层面:

total = sum(sum(v.amount for v in ob.anotherob) for ob in self.oblist)