(x,y)=(5,10)#使用元组
x
Out[4]:5
y
Out[5]:10
x,y =5,10
x
Out[7]:5
y
Out[8]:10
x,y
Out[9]:(5,10)[x,y]=[5,10]#使用列表
x
Out[11]:5
y
Out[12]:10[a,b,c]=(1,2,3)#混合使用
a
Out[14]:1
b
Out[15]:2
序列赋值两边数量应一致
a,b,c ='ulk'#数量一致,右边为字符串序列
a
Out[17]:'u'
b
Out[18]:'l'
c
Out[19]:'k'
a,b,c ='python'#数量不一致
Traceback (most recent call last):
File "D:\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py", line 3326,in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-21-c4d7bc36942e>", line 1,in<module>
a,b,c ='python'
ValueError: too many values to unpack (expected 3)
扩展序列解包赋值
s ='python'
a,b,*c = s
a
Out[24]:'p'
b
Out[25]:'y'
c
Out[26]:['t','h','o','n']
a,*b,c = s
a
Out[28]:'p'
b
Out[29]:['y','t','h','o']
c
Out[30]:'n'
b =''.join(b)#将字符列表转成字符串
b
Out[32]:'ytho'
a,b,c,*d ='ulk'
a
Out[34]:'u'
b
Out[35]:'l'
c
Out[36]:'k'
d #空列表
Out[37]:[]
多目标赋值
a = b =[]#两变量引用同一列表
a.append(3)
a
Out[40]:[3]
b
Out[41]:[3]
a =[]#两变量引用不同列表
b =[]
a.append(3)
a
Out[45]:[3]
b
Out[46]:[]
a,b =[],[]
a.append(3)
a
Out[49]:[3]
b
Out[50]:[]