本文实例讲述了python使用 zip 同时迭代多个序列。分享给大家供大家参考,具体如下:
zip 可以平行地遍历多个迭代器
python 3中zip相当于生成器,遍历过程中产生元祖,python2会把元祖生成好,一次性返回整份列表
zip(x,y,z)
会生成一个可返回元组 (x,y,z) 的迭代器
>>> x = [1, 2, 3, 4, 5] >>> y = ['a', 'b', 'c', 'd', 'e'] >>> z = ['a1', 'b2', 'c3', 'd4', 'e5'] >>> for i in zip(x,y,z): ... print(i) ... (1, 'a', 'a1') (2, 'b', 'b2') (3, 'c', 'c3') (4, 'd', 'd4') (5, 'e', 'e5')
遍历长度不一样(只要耗尽一个就会结束,若想遍历不等长请使用itertools的zip_longest)
>>> x = [1, 2, 3, 4, 5, 6] >>> y = ['a', 'b', 'c', 'd', 'e'] >>> for i in zip(x,y): ... print(i) ... (1, 'a') (2, 'b') (3, 'c') (4, 'd') (5, 'e')
>>> from itertools import zip_longest >>> x = [1, 2, 3, 4, 5, 6] >>> y = ['a', 'b', 'c', 'd', 'e'] >>> for i in zip_longest(x,y): ... print(i) ... (1, 'a') (2, 'b') (3, 'c') (4, 'd') (5, 'e') (6, None)
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。