7.4 返回多个值的函数¶

问题¶

你希望构造一个�以返回多个值的函数

解决方案¶

为了能返回多个值,函数直接return一个元组就行了。例如:

>>> def myfun():
... return 1, 2, 3
...
>>> a, b, c = myfun()
>>> a
1
>>> b
2
>>> c
3

讨论¶

尽管myfun()看上去返回了多个值,实际上是先创建了一个元组然�返回的。 这个语法看上去比较奇怪,实际上我们使用的是逗��生�一个元组,而�是用括�。比如下�的:

>>> a = (1, 2) # With parentheses
>>> a
(1, 2)
>>> b = 1, 2 # Without parentheses
>>> b
(1, 2)
>>>

当我们调用返回一个元组的函数的时候 ,通常我们会将结果赋值给多个��,就�上�的那样。 其实这就是1.1�节中我们所说的元组解包。返回结果也�以赋值给�个��, 这时候这个��值就是函数返回的那个元组本身了:

>>> x = myfun()
>>> x
(1, 2, 3)
>>>