Python_内置函数之zip

  zip函数用于将可迭代对象作为参数,将可迭代对象中的元素打包成一个个元祖,然后返回这些元祖组成的一个zip对象,可以使用list()方法将这个zip对象转化为列表,列表中的元素的数据类型依旧是元组类型。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。

l1 = [1, 2, 3]
l2 = ['a', 'b', 'c', 5]
l3 = ['*', '**', (1, 2, 3)]

for i in zip(l1, l2, l3):
    print(i)

  结果如下:

(1, 'a', '*')
(2, 'b', '**')
(3, 'c', (1, 2, 3))

  zip在处理字典时,只是处理字典的key。可以利用此特性做其他操作。

dic1 = {'A': 111, 'B': 222, 'C': 333}
dic2 = {'a': 444, 'b': 555, 'c': 666}
ret = zip(dic1, dic2)
for i in ret: print(i)

  结果:

('A', 'a')
('B', 'b')
('C', 'c')

  其他用法结合扩展使用:

dic1 = {'A': 111, 'B': 222, 'C': 333}
dic2 = {'a': 444, 'b': 555, 'c': 666}
ret = zip(dic1.keys(), dic2.values())
for i in ret: print(i)

  结果:

('A', 444)
('B', 555)
('C', 666)

  

原文地址:https://www.cnblogs.com/ZN-225/p/9588408.html