python- 序列解包

同时(并行)给多个变量赋值

>>> x, y, z = 1, 2, 3
>>> print(x, y, z)
1 2 3

交换多个变量的值

>>> x, y = y, x
>>> print(x, y, z)
2 1 3

序列解包(可迭代对象解包)

>>> values = 1, 2, 3
>>> values
(1, 2, 3)
>>> x, y, z = values
>>> x
1

元组

>>> scoundrel = {'name':'Robin', 'girlfriend':'Marion'}
>>> key, value = scoundrel.popitem()
>>> key
'girlfriend'
>>> value
'Marion'

等号左右两边的元素个数确保相同,或者使用运算符(*)来收集多余的值

>>> a, b, *rest = [1, 2, 3, 4]
>>> rest
[3, 4]

将带星号的变量放在其他位置

>>> name = "fist middle1 middle2 middle3 last"
>>> first, *middle, last = name.split()
>>> middle
['middle1, middle2, middle3']

等号的左边可以是任何类型的序列,但带星号的变量最终包含的总是一个列表

>>> x, *middle, y = "COOL"
>>> middle
['O','O']
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值