zip()函數(shù)可以把兩個(gè)列表“壓縮”成一個(gè)zip對(duì)象(可迭代對(duì)象),這樣就可以使用一個(gè)循環(huán)并行遍歷兩個(gè)列表。為了測(cè)試zip()函數(shù)的功能,我們可以先在交互式解釋器中“試驗(yàn)”一下該函數(shù)的功能。
>>>a=['a','b','c']
>>>b=[1,2,3]
>>>[xforxinzip(a,b)]
[('a',1),('b',2),('c',3)]
從上面的測(cè)試結(jié)果來(lái)看,zip()函數(shù)壓縮得到的可迭代對(duì)象所包含的元素是由原列表元素組成的元組。
Pthon2.x的zip()函數(shù)直接返回列表,而不是返回zip對(duì)象。Python2.x的zip()函數(shù)返回的列表所包含的元素和Python3.x的zip()返回的zip對(duì)象所包含的元素相同。
例如:
>>>c=[0.1,0.2]
>>>[xforxinzip(a,c)]
[('a',0.1),('b',0.2)]
從上面代碼可以看出,如果zip()函數(shù)壓縮的兩個(gè)列表長(zhǎng)度不相等,那么zip()函數(shù)將以長(zhǎng)度更短的列表為準(zhǔn)。
zip()函數(shù)不僅可以壓縮兩個(gè)列表,也可以壓縮多個(gè)列表。比如下面試驗(yàn)同時(shí)壓縮3個(gè)列表:
>>>[xforxinzip(a,b,c)]
[('a',1,0.1),('b',2,0.2)]
從上面代碼可以看出,如果使用zip()函數(shù)壓縮N個(gè)列表,那么zip()函數(shù)返回的可迭代對(duì)象的元素就是長(zhǎng)度為N的元組
以上內(nèi)容為大家介紹了python培訓(xùn)之zip函數(shù)怎么使用,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。