编辑1:已解决!解决方案是使用@sushanth提供给我的i for i in arr if i > 0
代码的最终产品:
def positive_sum(arr):
return sum(i for i in arr if i > 0)
我试图完成一些代码战挑战,我遇到了一个给我带来问题的挑战。给我一个正数和负数的列表,我应该找到所有正数的总和
以下是我已经拥有的:
def positive_sum(arr):
for n in arr:
if n < 0:
arr.remove(n)
return sum(arr)
以下是我应该处理的列表:
[1,2,3,4,5]
[1,-2,3,4,5]
[-1,2,3,4,-5]
[]
[-1,-2,-3,-4,-5]
然而,每当我运行这些测试时,除了最后一个测试,所有的测试都通过了,所有的测试都是负数。出于某种原因,它的结果是-6
,即使所有负数都应该被删除
为什么会这样?我应该做什么来确保所有的测试都通过
使用生成器尝试sum(),如果条件为:
相关问题 更多 >
编程相关推荐