将“继续”从函数内部传递到 Python 中的外部循环
Posted
技术标签:
【中文标题】将“继续”从函数内部传递到 Python 中的外部循环【英文标题】:Pass 'continue' from inside a function to the outer loop in Python 【发布时间】:2021-04-09 16:01:55 【问题描述】:我希望我能相应地表达自己,因为我对编程很陌生,我确信答案很简单,但我无法到达那里...... :) 所以我有一个执行某些功能的“for”循环。每个函数都有一个“if”语句,并且只有在条件允许的情况下才会执行某些操作。 我想要的是在满足函数的“if”语句后立即重置循环。
编辑:我搞砸了这个功能:(谢谢你到目前为止的回答^^ 我希望工作的一个例子:
def do_something():
if something == True:
do_some_stuff
return continue
while i < 999:
do_something()
do_something2()
do_something3()
“返回继续”是无法按我希望的那样工作的部分,我找不到解决方案(也许我不知道谷歌到底要做什么)
【问题讨论】:
你的意思是continue
没有返回吗?您不能返回继续,因为它不是一个值。它甚至不是一个函数。
这里的函数在哪里?这只是一个带有 if 语句的循环。正如 Silvio 所说,你可以在这里做continue
。作为旁注,您可以使用if something
而不是if something == True
。
编辑了我之前失败的函数
【参考方案1】:
你可以让'do_something'返回一个布尔值
def do_something():
if something is True:
do_some_stuff
return True
return False
while i < 999:
if do_something():
continue
do_something2()
do_something3()
【讨论】:
【参考方案2】:没有任何功能,所以return
什么都没有。但是,一旦满足条件something
,您就可以将break
退出while
循环,如下所示:
while i < 999:
if something == True:
do_some_stuff
break
【讨论】:
以上是关于将“继续”从函数内部传递到 Python 中的外部循环的主要内容,如果未能解决你的问题,请参考以下文章