python exercise function之高阶函数zip

python中的几个常用高阶函数包括:filter、map、reduce、zip、sorted

本文主要对zip进行说明


zip(*iterables)

zip函数对多个可迭代对象进行处理,每次取一个各迭代对象的元素,组成新的元组,元组的数量由参数中长度最短的可迭代对象决定,最终返回的zip对象就是包含了一个个这样的元组。当使用zip(*)时。表示解压操作

示例1 对多个不同类型的可迭代对象进行合并

alist = ['a', 'b', 'c']
atuple = (1,2,3,4)
astring = 'testzip'
print(list(zip(alist, atuple, astring)))


#输出
[('a', 1, 't'), ('b', 2, 'e'), ('c', 3, 's')]

示例2 使用zip反转字典中的key-value

adict = {'a': 1, 'b': 2, 'c': 3}
print(dict(zip(adict.values(), adict.keys())))


#输出
{1: 'a', 2: 'b', 3: 'c'}

示例3 使用zip(*)进行解压操作

azip = [(1, 2, 3), ('a', 'b', 'c')]
atuple, btuple, ctuple = zip(*azip)
print(atuple)
print(btuple)
print(ctuple)



#输出
(1, 'a')
(2, 'b')
(3, 'c')

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值