>>> c
'w'
>>> (a,b,c) = "qiw"
>>> a,c
('q', 'w')
>>> a,b,c = 'qiw' #与前面等价
>>> a,b
('q', 'i')
>>> a,b = 'qiw' #报错了,因为左边和右边不是一一对应
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: too many values to unpack
>>> (a,b),c = "qi","wei" #注意观察,这样的像是是如何对应的
>>> a,b,c
('q', 'i', 'wei')
>>> string = "qiwsir"
>>> a,b,c = string[0],string[1],string[2] #取切片也一样
>>> a,b,c
('q', 'i', 'w')
>>> (a,b),c = string[:2],string[2:]
>>> a,b,c
('q', 'i', 'wsir')
从实验中,可以看出,要搞清楚这种眼花缭乱的赋值,就仅仅扣住“一一对应”这个命脉即可。
如果看官用python3,在赋值上还有更多有意思的东西呢。不过,本讲座用的还是python2。










