python一个函数返回两个值

  • Post category:Python

当我们需要在python中的某个函数中返回多个值时,可以使用python的元组(tuple)类型来完成这个任务。元组可以将多个对象打包成一个不可变的数据结构,因此可以创建一个包含多个返回值的元组,然后在调用该函数的代码处进行解包操作,以获取函数返回的所有值。

下面是一个函数返回两个值的python代码实例:

def two_operations(x, y):
    result_1 = x + y
    result_2 = x - y
    return result_1, result_2

在这个例子中,我们定义了一个名为two_operations的函数,它接收两个参数xy。在函数中,我们对这两个参数做了不同的操作,然后将它们打包成了一个元组并通过return语句返回。

为了在调用该函数后获得返回值,我们需要使用元组的解包操作:

a, b = two_operations(17, 5)
print(a)  # 22
print(b)  # 12

在这个代码片段中,我们定义了两个变量ab来接收函数返回的两个值,然后通过print语句将它们输出到控制台上。

注意到当函数执行return语句时,我们不需要在函数定义中指定返回值的数量,Python会自动将返回值打包成一个元组。因此,我们可以非常方便地返回任意数量的值,只需要将这些值打包成一个元组即可。可以结合使用*操作符,将多余的返回值打包到一个元组中:

def three_operations(x, y, z):
    result_1 = x + y
    result_2 = x - y
    result_3 = x * z
    return result_1, result_2, *result_3

在这个函数中,我们返回了三个值。最后一个值是一个长度为z的列表,我们将它插入到了返回值的元组中,这样就可以在解包时将它们分配到相应的变量中了。