python返回多个值与赋值多个值的示例代码

  • Post category:Python

当函数返回多个值的时候,Python会自动将它们封装成一个元组(tuple)并返回。我们可以使用多个变量,或者使用可迭代对象对元组进行解包来获取这些返回值。

多个变量接收返回值

在函数调用的时候,我们可以使用多个变量来接收函数返回的多个值,Python会自动将这些值封装成一个元组(tuple),然后将这个元组进行拆包,将每一个元组成员分别赋值给指定的变量。

示例代码如下:

def multi_return():
    return "apple", "orange", "banana"

fruit1, fruit2, fruit3 = multi_return()
print(fruit1)  # apple
print(fruit2)  # orange
print(fruit3)  # banana

在上面的示例代码中,我们定义了一个函数multi_return(),它返回三个不同的字符串。当我们调用这个函数时,将会返回一个元组(tuple),其中包含了三个字符串。然后,我们使用三个变量fruit1fruit2fruit3来接收元组中的三个值,每个值分别被赋值到对应的变量。

最后,我们打印这三个变量的值,可以看到它们分别是appleorangebanana

使用可迭代对象解包元组

除了使用多个变量来接收函数返回值外,我们还可以使用一个可迭代对象来接收参数,然后将这个可迭代对象对元组进行解包,获取元组中的值。

示例代码如下:

def multi_return():
    return "apple", "orange", "banana"

fruits = multi_return()
print(fruits)         # ('apple', 'orange', 'banana')
print(*fruits)        # apple orange banana

在这个示例代码中,我们通过调用multi_return()函数得到了一个元组,其中包含了三个字符串。注意,我们没有使用多个变量来接收返回值,而是将返回值赋值给了一个名为fruits的变量。

在第一个print()语句中,我们打印了fruits变量,发现它是一个包含三个值的元组。正如我们所说的那样,Python会将函数返回的多个值自动封装成一个元组(tuple)。

在第二个print()语句中,我们使用了一个特殊的操作符*,它可以将可迭代对象拆包成单个元素,之后我们就可以使用拆包后的元组中的每一个值。在这里,我们使用*fruits来解包元组,将其中的三个值appleorangebanana分别打印出来。