我有这个代码:
def positive(A):
if len(A)==0:
return 0
else:
if A[0]>0:
return A [0]+positive(A[1:])
else:
return positive(A[1:])
Run Code Online (Sandbox Code Playgroud)
理论上,当我输入一个数字列表时,它会返回正数列表。例如,当我通过时[2,5,-3,-5,2,-6]它会返回[2,5,2]. 但是在我的代码中,发生的情况是评估了正值,因此返回9. 我认为我的问题是A [0]+positive(A[1:])一致的,但我不知道如何改变它。任何帮助表示赞赏。