python基础语法(5) 赋值技巧

序列解包

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

>>>x , y = y , x
>>>print x , y , z
2 1 2

这两个例子表现出来的意思就是,序列解包。 讲多喝只的序列解开,然后放到变量的序列中。

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

当函数或者方法返回元组(或者其他的序列或可迭代对象)时,这个特性尤其有用。假设需要获取
(删除)字典中任意的键-值对,可以使用popitem方法,这个方法将键-值作为元组返回。那么这个元组就可以直接赋值到两个变量中:

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

它允许函数返回一个以上的值并且打包成元组,然后通过一个赋值语句很容易进行访问。所解包的序列中的元素数量必须和防止在赋值符号=左边的变量数量完全一直,否则Python会在赋值时引发异常。


链式赋值

链式赋值(chained assignment)是将用一个值赋给多个变量的捷径,它看起来有些像上节中的并行赋值,不过这里值处理一个值。

x=y=somefunction()
x=y
注意上面的语句和下面的语句不一定等价

x=somefunction()
y=somefunction()

增量赋值

>>>x=2
>>>x += 1
>>>x *=2
>>>x
6

对于其他数据类型也使用

>>>fnord = 'foo'
>>>fnord += 'bar'
>>>fnord *= liwliwentai
liliwellllsfks;fks;112122
>>>fnord
'foobarfoobar'





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值