我正在尝试对列表求和,但跳过第一个偶数,然后继续添加列表的其余部分,包括其余的偶数,但我似乎不太正确。
list = [-3, -7, -1, 0, 1, 2, 3, 4, 5, 6, 7]
def sum_num(num_list):
sum = 0
for i in num_list:
if i % 2 == 0:
continue
sum += i
return sum
print sum_num(list)
我要么不对所有偶数求和,要么对所有偶数求和。我该怎么做才能跳过第一个偶数? 谢谢!
最佳答案
将您的 if
语句更改为仅成功一次。
def sum_num(num_list):
total = 0
once = False
for i in num_list:
if i % 2 == 0 and not once:
once = True
continue
total += i
return total
在它跳过第一个 even 之后,您的 bool once
将为 True,导致 if
条件在连续的 even 中失败。
关于python - 汇总表 : Skip first even number,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28225828/