Python 函数返回

标签 python function

如果我想从 Python 中的函数返回多个变量,我一直在执行以下操作:

def foo():
    firstName = 'Bob'
    lastName = 'Jones'
    return [firstName, lastName]

如果我只想找到名字,我会这样做

[firstName, dummy] = foo()

但是,假设我最初有这个功能

def fooInitial():
    firstName = 'Bob'
    return firstName

我从我的代码的许多部分调用了它,如果我想按照我一直在做的方式将 lastName 添加为另一个输出,我将不得不更改我代码中的其他地方调用它。

有没有办法做一些类似于 Matlab 的事情,调用 a = foo() 给我名字(不是列表中的第一个和最后一个)和 [a,b ]=foo() 给我第一个和最后一个?

最佳答案

不,没有。您最好要么更改所有调用 fooInitial() 的代码,要么添加一个不同的方法来返回两个参数并具有 fooInitial() 使用该方法:

def barInitial():
    first_name, last_name = 'Bob', 'Jones'
    return first_name, last_name

def fooInitial():
    return barInitial()[0]

请注意,您也可以只返回元组而不是列表;元组只需要一个逗号来定义,因此语法更简洁(不需要方括号)。您可以在解包返回值时执行相同的操作:

first_name, last_name = barInitial()

关于Python 函数返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18144722/

相关文章:

android - 根据所选手机语言运行功能

具有多种模式的 Python Regex sub()

python - 调用具有超过 1 个返回值的 python 脚本

c - 尝试用 C 语言逼近欧拉数

javascript - 检测是否有任何 JavaScript 函数正在运行

C - 返回数组作为函数参数

python - PySpark : Setting Executors/Cores and Memory Local Machine

python - 在 matplotlib 中绘制时间增量

python - 在 Windows 上从 python 运行 Stardew Valley

javascript - React调用 Bootstrap 函数?