5.2.1 序列解包

5.2.1 序列解包

序列解包的别名为“可迭代对象解包”

  1. 可同时给多个变量赋值
	x,y,z=1,2,3
	print(x,y,z)

         输出:  1 2 3

  1. 可交换多个变量的值:
        x,y,z=z,x,y

        输出结果:x值为3,y值为1,z=2

  1. 将一个序列(或任何可迭代对象解包),将得到的值存储在一系列变量中。
	>>> values=1,2,3
	>>> values
	>>> (1,2,3)    #元组
	>>> x,y,z=values    # 结果x值为1,y值为2,z值为3
	
	
  1. 从字典中用popitem方法删除一个键-值对,键-值对会以一个元组的方式返回,可以将返回元组解包到2个变量里。

  2. 要解包的序列包含的元素个数必须与等号左边的列出的目标个数相同

  3. *表达式 可以获取单个变量的多个元素,即用来收集多余的值,这样 无需 确保值与变量的个数必须相同

    *获取的默认值为list
    >>> a,b,*c=1,2,3,4
    >>>a
    1
    >>>b
    2
    >>>c
    [3,4]

        #获取中间部分:
         >>>a,*b,c=0,1,2,3,4
          >>>a
          0         
          >>>c
          4
          >>>b
          [1,2,3]

   #如果左值比右值多,那么带*的变量默认值为空列表

  #嵌套解包

	>>>(a,b),(c,d)=(1,2),(3,4)
	>>> a
	>>>1
	>>>b
	>>>2
	>>>c
	>>>3
	>>>d
	>>>4
	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值