python中的zip函式

2021-09-03 00:25:15 字數 1679 閱讀 6739

先貼上原始碼:

zip

(iter1 [

,iter2 [..

.]])

-->

zipobject

return a zip

object whose .__next__(

) method returns a tuple where

the i-th element comes from the i-th iterable argument. the .__next__(

) method continues until the shortest iterable in the argument sequence

is exhausted and then it raises stopiteration.

意思:zip裡面接收的是可迭代物件,依次取值,返回的是乙個元組

使用舉例:

一、傳入乙個可迭代物件(列表為例,也可以傳入元組、集合):

如果傳入字典,只取鍵值拼接為元組

a =[1,

2,3]

b =zip

(a)print

(b)-

->

<

zipobject at 0x7f1122bdb608

>

print

(list

(b))--

>[(

1,),

(2,)

,(3,

)]print

(tuple

(b))--

>((

1,),

(2,)

,(3,

))print

(dict

(b))--

>報錯valueerror

如果傳入字典

a =b =

zip(a)

print

(tuple

(b))--

>((

1,),

(3,)

)二、傳入兩個可迭代物件

a =[1,

2,3]

b =[8,

9,0]

c =zip

(a, b)

print

(tuple

(c))--

>((

1,8)

,(2,

9),(

3,0)

)傳入兩個字典

a =b =

c =zip

(a, b)

print

(tuple

(c))--

>((

1,8)

,(3,

7))面試題分析:

a0 =

dict

(zip((

'a','b','c','d','e'

),(1,2,3,4,5))

)a0 =

}如果是

a0 =

list

(zip((

'a','b','c','d','e'

),(1,2,3,4,5))

)a0 =[(

'a',1)

,('b',2)

,('c',3)

,('d',4)

,('e',5)

]

Python中的Zip 函式

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

Python中的zip函式

定義 zip iterable,zip 是python的乙個內建函式,它接受一系列可迭代的物件作為引數,將物件中對應的元素打包成乙個個tuple 元組 然後返回由這些tuples組成的list 列表 若傳入引數的長度不等,則返回list的長度和引數中長度最短的物件相同。利用 號操作符,可以將list...

Python中的zip函式

zip 函式用於將可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的列表。ps.如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,利用 號操作符,可以將元組解壓為列表。a 1,2,3 b 4,5,6 c 4,5,6,7,8 zipped zip a,b ...