关于赋值、打包和解包这 3个概念,我觉得有必要做一个分享,因为很多朋友确实不清楚。...如果有这样一个元组t:
>> t = ('foo', 'bar', 'baz', 'qux')
发生这种情况时,就好像元组中的项目已被“打包”到对象中。
我们可以通过索引,获取其中的元素。...>>> t
('foo', 'bar', 'baz', 'qux')
>>> t[0]
'foo'
>>> t[-1]
'qux'
如果随后将该“打包”对象分配给新元组,则各个项目将“解包”到元组中的对象中...
(s1, s2, s3, s4, s5) = t
ValueError: not enough values to unpack (expected 5, got 4)
打包和解包...'foo'
>>> b = 'bar'
>>> a, b
('foo', 'bar')
>>> a, b = b, a
>>> a, b
('bar', 'foo')
这种操作语法足够精简,是Java