关于python中enumerate和zip函数的用法及举例

本文介绍了Python中enumerate和zip函数的使用方法,并通过实例演示了如何利用这两个函数进行高效的数据处理。enumerate函数能够同时获取列表的下标和值,而zip函数则用于组合多个列表中的对应元素。

关于python中enumerate和zip函数的用法及举例

关于enumerate函数:

enumerate函数可以同时返回列表或元组等可迭代对象的下标和内容,但实际上,enumerate函数实际返回的是一个enumerate类型的可迭代对象,下面是用法举例:

seq=[1,2,'3','hello world']
#传统方法迭代seq
i=0
for element in seq:
    print seq[i]
    i+=1
#使用enumerate函数迭代seq
for i,element in enumerate(seq):
    print i,element
print type(enumerate(seq))
结果是:

1
2
3
hello world
0 1
1 2
2 3
3 hello world
<type 'enumerate'>

关于zip函数:

其实,zip函数是一个非常有趣的函数,我们大家都知道zip是一个压缩软件的名字,而python里面的zip函数确实有压缩功能。zip函数可以接受一系列的可迭代对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后由这些tuple(元组)组成一个list(列表),故其返回值为list(列表),而如果传入的可迭代对象的长度不一致,则返回可迭代对象中最短的一个对象的长度,而其,通过zip(*list)可以将原打包的可迭代对向分开,详细见下面例子:

a=[1,2,3,4,5]
b=['a','b','c','d']
c=zip(a)
print type(c)
print c
c=zip(a,b)
print c
#在zip函数的括号里面加上*号,则是zip函数的逆操作
d=zip(*c)
print d

输出结果为:

<type 'list'>
[(1,), (2,), (3,), (4,), (5,)]
[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]
[(1, 2, 3, 4), ('a', 'b', 'c', 'd')]

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值