所以问题是让我在给定条件奇数或偶数的情况下返回列表中偶数或奇数元素的总和。因此,如果条件为奇数,则必须返回所有奇数的列表。如果列表为空/值不符合条件,则返回0。
这是我到目前为止所拥有的:
l = [1,2,3,4,5,6]
def conditionalSum(value, condition):
s = 0
if condition == "even":
for i in l:
if i % 2 == 0:
s += i
elif condition == "odd":
for i in l:
if i % 2 !=0:
s = s+ i
else:
return 0
当我尝试运行此程序时,什么也没发生-甚至没有错误!任何帮助表示赞赏
您可以使用内置sum
函数将您的代码修改为更具Python风格。
l = [1, 2, 3, 4, 5, 6]
def conditionalSum(value, condition):
if condition == "even":
return sum(i for i in l if i % 2 == 0)
elif condition == "odd":
return sum(i for i in l if i % 2 == 1)
else:
return 0
print(conditionalSum(value, "even"))
输出:
12
顺便说一句value
,您的函数中有一个未使用的变量conditionalSum
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句