当函数或方法返回元组时,将元组中值赋给变量序列中的变量,这个过程就叫做序列解包。
1、序列1,2,3被打包到元组values中
>>> values = 1,2,3
>>> type(values)
<type 'tuple'>
>>> values
(1, 2, 3)
2、序列解包,元组values中的值分别被赋给变量序列中的x,y,z
>>> x,y,z=values
>>> print x,y,z
1 2 3
>>> type(x)
<type 'int'>
所解包的序列中的元素数量必须和赋值号(=)左边变量数目完全一样,否则就会报错。
>>> x,y=values
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: too many values to unpack
>>> x,y,z,w=values
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: need more than 3 values to unpack