Python基础教程(第五章)

序列解包

多个赋值操作可以同时进行 x, y, z = 1, 2, 3

也可以x, y = y, x

上述的赋值实际上进行了序列解包——将多个值的序列展开,然后放到变量的序列中。如下所示

>>>values = 1, 2, 3

>>> values

(1, 2, 3)

>>>x, y, z = values

>>>x

1

当函数或方法返回元组时,这个特性十分有用。popitem方法(删除一个键值对)可将字典中的键值对以元组的方式返回。

>>>sounderl = {'name':'Robin', 'girlfriend':'Alice'}

>>>key, value = sounderl.popitem()

>>>key

'girlfriend'

>>>value

'Alice'

 

is:同一性运算符

>>>x = y = [1, 2, 3]

>>>z = [1, 2, 3]

>>> x == y

True

>>>x == z

True

>>>x is y

True

>>>x is z

False

is是判断同一性而不是是否相等,x与y绑定在同一列表上,z则绑定在另一列表上,虽然它们的值相等

 

断言

assert 的工作方式类似于

if not condition:

  crash program

 

并行迭代

zip函数可以将多个序列压缩在一起,然后返回一个元组的列表:

>>>zip(names, ages)

[('anne', 12), ('beth', 45), ('george', 32)]

在循环中使用zip函数进行并行迭代:

for name, age in zip(names, ages)

  print name, 'is', age, 'years old'

 

编号迭代

enumerate函数可以在提供索引的地方迭代索引-值对

for index, string in enumerate(strings):

  if 'xxx' in string:

    strings[index] = '[censored]'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值