在python中,在函数结束之前(例如检查失败),退出函数(没有返回值)的最佳方法是什么?

2024-04-19 14:09:44 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我们在一个迭代中调用一个没有返回值的函数。我认为我的程序的行为方式在下面的伪代码中解释:

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。如果函数体中的检查失败,是否有更好的方法“退出没有返回值的函数”?


Tags: 函数代码in程序noneforfoomore
3条回答

我建议:

def foo(element):
    do something
    if not check: return
    do more (because check was succesful)
    do much much more...

可以使用不带任何参数的return语句退出函数

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...

你可以简单地使用

return

它的作用和

return None

如果执行到达函数体的末尾而未命中return语句,则函数也将返回None。返回nothing与在Python中返回None是一样的。

相关问题 更多 >