扩展的序列解包:
1:*变量:获取分配完数据之后的所有剩余数据----封装成列表进行输出(不能同时出现两个或多个*,只能有一个)
a,*b = 'ABCD'------>a='A' b=['B','C','D']
*a,b='ABCD'----->a =['A','B','C'] b=D
a,*b,c = 'ABCD'---->a='A' b =['B','C'] c='D'
a,b,c,d,*e='ABCD'---->a='A' b='B' c='C' d='D' e=[]
*b,=[1,2,3]---->b=[1,2,3]
2:错误情况
a,b,c,d,*e,f = 'ABCD'---->报错,f报错,值不够
*b=[1,2,3]----->报错,*b必须和其他元素共用(*b不能参与基本赋值,只能参与序列赋值)
3:用于循环
l = [1,2,3,4]
while l:
a,*l = l
print(a,l)
---->1 [2,3,4]
----->2 [3,4]
----->3 [4]
----->4 []