我想弄清楚一个问题,我感到困惑。基本上我有一个清单,它应该代表银行对账单。我试图将这个列表加在一起,所以负数应该代表withdrawl,加在一起,正数加在一起表示存款。到目前为止,我如何将列表添加到一起
def statement(l):
deposit = 0
withdrawl = 0
for a in l:
a = sum(l)
for b in l:
if b == -b:
b = sum(b)
return [a,-b]
但是当我做statement([30.95,-15.67,45.56,-55.00,43.78])
返回[49.620000000000005, -43.78]
时,它应该返回[120.29,-70.67]
有人可以帮忙吗?
谢谢!
不错的答案列弗。 – 2013-02-25 07:53:04
这样做的好处是它只能让一次通过序列。我对这个答案进行了计时,并用两个对sum()进行的调用来回答,这个答案更快。 – steveha 2013-02-25 07:53:49
@steveha当编辑显示时,它也位于CPython上。 – 2013-02-25 07:58:42