问题描述
|
让我们假设一个迭代,其中我们调用一个没有返回值的函数。我认为我的程序应该表现的方式在以下伪代码中进行了解释:
for element in some_list:
foo(element)
def foo(element):
do something
if check is true:
do more (because check was succesful)
else:
return None
do much much more...
如果我在python中实现此功能,则该函数返回None
。如果检查函数的主体失败,是否有更好的方法退出“没有返回值的函数”?
解决方法
您可以简单地使用
return
与...完全相同
return None
如果执行到达函数主体的末尾而未命中return
语句,则函数还将返回None
。什么也不返回与在Python中返回ѭ1相同。
, 我会建议:
def foo(element):
do something
if not check: return
do more (because check was succesful)
do much much more...
, 您可以使用不带任何参数的“ 5”语句退出函数
def foo(element):
do something
if check is true:
do more (because check was succesful)
else:
return
do much much more...
或引发异常,如果您想知道该问题
def foo(element):
do something
if check is true:
do more (because check was succesful)
else:
raise Exception(\"cause of the problem\")
do much much more...