我正在处理大量记录集,并且需要为每个客户帐户总计给定字段以达到总体帐户余额。虽然我可以将数据放在任何合理的形式,但我认为最简单的方法是在处理每条记录时,元组列表(cust_id,balance_contribution)。经过一轮处理后,我想为每个cust_id添加第二项,并且我试图在数千次数据循环中不循环数据。使用Python为元组中的每个给定第一个值计算元组的第二个值
作为一个例子,输入数据可能看起来像:[(1,125.50),(2,30.00),(1,24.50),(1,-25.00),(2,20.00)]
而且我所要的输出是这样的:
[(1,125.00),(2,50.00)]
我读过,人们刚刚其它问题想要使用sum(i,i,j在a中)的形式添加元组的第二个元素的值,但是这确实将它们与第一个元素分开。
这个讨论,python sum tuple list based on tuple first value,它将值作为分配给每个键(cust_id)的列表放在字典中。我想我可以弄清楚如何在列表中添加每个值?
有关更好的方法的任何想法?
预先感谢您。
答案中的代码最适合我现有的代码,余额返回列表中,减少了进一步的处理。如果我需要查找,那么我认为@ beiller的解决方案将是最好的。 – 2015-02-25 13:05:06
我非常欣赏其他人。在某个时候,我想试试Uri Goren's,因为我想要改善我的单挑。 – 2015-02-25 13:06:48