python中的for循环为啥返回8000而不是9020
Posted
技术标签:
【中文标题】python中的for循环为啥返回8000而不是9020【英文标题】:for loop in python why does this return 8000 not 9020python中的for循环为什么返回8000而不是9020 【发布时间】:2022-01-21 18:14:34 【问题描述】:有谁知道为什么返回 8000 而不是 9020.. 但是当我不缩进 return 语句时,它给了我 9020?
[这是我的代码]
def over_nine_thousand(lst):
sum = 0
for num in lst:
sum += num
if sum > 9000:
break
return sum
【问题讨论】:
请将您的代码发布为文本,而不是图像。 你知道缩进有什么作用吗? 如现在所写,它在第一次迭代后返回,但如果你不缩进,它会迭代lst
并在 lst
被消耗或 @987654325 时到达 return
@ 超过 9000。
你在 for 循环中有一个 return
语句。因此循环只会运行一次,因为return
会导致函数终止。大概您打算将 return
放在 for 循环之外。
【参考方案1】:
下次请创建完全可复制的示例并将其添加为文本,这样您将更有可能收到高质量的答案。
def func(lst):
sum = 0
for num in lst:
sum+= num
if(sum>9000):
break
return sum
你需要 return 在 func 内部但在 for 外部。
【讨论】:
以上是关于python中的for循环为啥返回8000而不是9020的主要内容,如果未能解决你的问题,请参考以下文章
为啥 C 和 C++ for 循环使用 int 而不是 unsigned int?