我想弄清楚一個問題,我感到困惑。基本上我有一個清單,它應該代表銀行對賬單。我試圖將這個列表加在一起,所以負數應該代表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