问题是:
完成在number_list上循环的函数sum_of_over_fives,并将只有大于5的数字加到总数中。然后它应该返回总数。
def sum_of_over_fives(number_list):
total = 0
for number in number_list:
number >5
total += number
return total
我收到“number> 5”行的缩进错误,但我觉得这条线路错了。
答案 0 :(得分:0)
正如@Mitch和@StephenRauch指出的,你的逻辑很好,唯一的问题是你的缩进和number > 5
应该是if statement。
根据PEP 8文档,您必须确保此时indentation of your function body is 4 为8。
然后,唯一剩下的就是将if
和:
放在number > 5
上。这是您的最终代码,其中包含已更正的缩进和正确的if
语句:
def sum_of_over_fives(number_list):
total = 0
for number in number_list:
if number > 5:
total += number
return total
print(sum_of_over_fives([1,2,3,4,5,6,7]))
>>>
13
但是像@a_guest所说,有一种更好的方法可以做你想做的事情。
我希望有帮助:)。
答案 1 :(得分:-2)
您可以使用内置插件filter
和sum
:
total = sum(filter(lambda x: x > 5, number_list))