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)
>>>