python使用 zip 同時迭代多個序列示例

2022-09-28 02:27:08 字數 1041 閱讀 9233

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 zi程式設計客棧p(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,www.cppcns.com 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')

www.cppcns.com

>>> frowww.cppcns.comm 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)

zip 同時迭代多個序列

1 可以使用zip 函式來同時迭代多個序列 xpts 1,5,4,2,8,10 ypts 100,121,78,37,23 for x,y in zip xpts,ypts print x,y 1 100 5 121 4 78 2 37 8 23zip a,b 的工作原理是建立出乙個迭代器,該迭代器...

53 Python 使用zip 並行迭代

目錄 使用zip 並行迭代 我們可以通過zip 函式對多個序列進行並行迭代,zip 函式在最短序列 用完 時就會停止 測試zip 並行迭代 names 小明 小紅 小王 小李 ages 20,18,18 zip 函式在最短序列 用完 時就會停止,它最短 jobs 學生 教師 隔壁 果農 for na...

Python的zip物件以及並行迭代

zip物件 zip 列表1,列表2,列表3,將多個列表對應位置的元素合成元組,並返回這個zip物件。a 1,3,4,5 b 11,33,44,55 c 22,33,44,66 d zip a,b,c print d 直接輸出返回zip物件 print list d 輸出列表轉化物件包含元組,這是列表...