python3中的zip函式

2022-03-01 04:21:46 字數 1599 閱讀 6633

zip函式的作用:

zip函式接受任意多個可迭代物件作為引數,將物件中對應的元素打包成乙個tuple,然後返回乙個可迭代的zip物件.

這個可迭代物件可以使用迴圈的方式列出其元素

若多個可迭代物件的長度不一致,則所返回的列表與長度最短的可迭代物件相同.

例1

>>> a1=[1,2,3]

>>> a2=[4,5,6]

>>> a3=[7,8,9]

>>> a4=["a","b","c","d"]

>>> zip1=zip(a1,a2,a3)

>>> print(zip1)

>>> for i in zip1:

... print(i)

...

(1, 4, 7)

(2, 5, 8)

(3, 6, 9)

例2

>>> zip2=zip(a1,a2,a4)

>>> print(zip2)

>>> for j in zip2:

... print(j)

...

(1, 4, 'a')

(2, 5, 'b')

(3, 6, 'c')

例3

>>> zip3=zip(a4)

>>> print(zip3)

>>> for i in zip3:

... print(i)

...

('a',)

('b',)

('c',)

('d',)

例4

>>> zip4=zip(*a4 *3)

>>>

>>> print(zip4)

>>> for j in zip4:

... print(j)

...

('a', 'b', 'c', 'd', 'a', 'b', 'c', 'd', 'a', 'b', 'c', 'd')

matrix = [

[1, 2, 3],

[4, 5, 6],

[7, 8, 9]

]

使用*號拆分list,zip對每個list打包成tuple

>>> list(zip(*matrix))

[ (1, 4, 7),

(2, 5, 8),

(3, 6, 9)

]

用列表推導式行列互換

>>> l1=[

[1, 2, 3],

[4, 5, 6],

[7, 8, 9]

]>>> print([[j[i] for j in l1] for i in range(len(l1[0])) ])

[ [1, 4, 7],

[2, 5, 8],

[3, 6, 9]

]

python3中的zip函式

zip 函式用於將多個可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的物件,這樣做的好處是節約了不少的記憶體 可以使用 list 轉換來輸出列表 zip 語法 zip iterable1,iterable2,a 1 2,3 b 4 5,6 ziped data zi...

python3中zip 函式的用法

zip 函式用於將可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的物件。我們可以使用list 轉換來輸出列表。如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,利用 號操作符,可以將元組解壓為列表。語法 zip iterable,引數說明 返回值 示例...

Python3 內建函式 zip

zip 是python的乙個內建函式,它接受一系列可迭代的物件作為引數,將物件中對應的元素按順序組合成乙個tuple,每個tuple中包含的是原有序列中對應序號位置的元素,然後返回由這些tuples組成的list。若傳入引數的長度不等,則返回list的長度和引數中長度最短的物件相同。在所有引數長度相...