python扩展的序列解包

扩展的序列解包:

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  []

猜你喜欢

转载自blog.csdn.net/loading0210/article/details/80945524