天天看點

python内置函數之zip()

1、zip() 函數的簡介和文法

zip() 函數用于将可疊代的對象作為參數,将對象中對應的元素打包成一個個元組,然後傳回由這些元組組成的對象,這樣做的好處是節約了不少的記憶體。

我們可以使用 list() 轉換來輸出清單。

如果各個疊代器的元素個數不一緻,則傳回清單長度與最短的對象相同,利用 * 号操作符,可以将元組解壓為清單。

zip 文法:

zip([iterable, ...])

參數說明:

  • iterabl -- 一個或多個疊代器;

傳回值

傳回一個對象。

2、zip()用法執行個體

lista = [1,2,3]
listb = [4,5,6]
listc = [4,5,7,8]
zipedAB = zip(lista,listb) # 傳回一個對象
ziped_ab = list(zipedAB)  #list()轉換為清單


zipedAC = zip(lista,listc)
ziped_ac = list(zipedAC)

print("zipped_ab is :",ziped_ab)   #執行結果為:zipped_ab is:[(1, 4), (2, 5), (3, 6)]
#元素個數與最短的清單一緻
print("zipped_ac is :",ziped_ac)   #執行結果為:zipped_ac is: [(1, 4), (2, 5), (3, 7)]

a,b = zip(*zip(lista,listb))

a,c = zip(*zip(lista,listc))   #與zip 相反,zip(*)可了解為解壓,傳回二位矩陣

print(a,b)  #執行結果為;(1, 2, 3) (4, 5, 6)
print(a,c)  #執行結果為;(1, 2, 3) (4, 5, 7)      

繼續閱讀