函数如何选择性地返回一个或多个值



忽略函数 f(( 的可选返回值的首选方法是什么?

一(

foo, _ = f()

b(

foo = f()[0]

c(

def f(return_bar=True):
    if return_bar:
        return foo, bar
    else:
        return foo
foo = f(return_bar=False)

如果您的函数有时返回两个变量,而另一次返回一个变量,那么您就会遇到麻烦。

foo, _ = f()

通常使用下划线忽略变量是标准做法,但在您的情况下,如果出于任何原因,此对f()的调用仅返回一个变量,您将收到运行时错误。

除非你能保证这次f()会返回两个变量,否则最好这样做

b = f()
if(isinstance(b, tuple)):
    foo = b[0]

相关内容

最新更新