python exercise function之高阶函数zip

版权声明:本文章为博主原创文章,未经博主允许不得转载,如有问题,欢迎留言交流指正 https://blog.csdn.net/finalkof1983/article/details/88913820

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')

猜你喜欢

转载自blog.csdn.net/finalkof1983/article/details/88913820