【发布时间】:2019-07-22 20:15:39
【问题描述】:
我的意思是:
if condition:
for variable in list:
function_to_call(variable)
else:
variable = "some value"
function_to_call(variable)
如果我的函数中没有一些 break 和 continue 语句,这可能会很好地工作...
结果,我收到以下错误:SyntaxError: 'continue' not properly in loop 因为虽然实际上函数周围有一个循环(我正在检查一些变量 - 所以当没有循环时 continue 不会被执行功能)。它仍然不起作用。
我还尝试将 continue 和 break 语句作为字符串放在 exec() 中,但无济于事(同样的错误)。
我该如何解决这个问题?
提前致谢!
【问题讨论】:
-
你能告诉我们
function_to_call的样子吗? -
您是否尝试在函数中使用
break?因为你做不到。 -
function_to_call(list if condition else ["some value"]),然后修复function_to_call,使其总是采用值列表。 -
或者,
for variable in (list if condition else ["some value"]): function_to_call(variable)。 -
一个函数没有在你调用它的地方内联,所以它不能修改你调用它的循环的控制流。相反,您可能希望根据函数的结果返回不同的值。然后,调用者可以检查返回值并使用它来控制循环。
标签: python function loops if-statement continue