1. 程式人生 > >Python 中的 zip(關鍵詞:Python/zip)

Python 中的 zip(關鍵詞:Python/zip)

描述

zip() 函式用於將可迭代的物件作為引數,將物件中對應的元素打包成一個個元組,然後返回由這些元組組成的列表。

如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,利用 * 號操作符,可以將元組解壓為列表。

zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中為了減少記憶體,zip() 返回的是一個物件。如需展示列表,需手動 list() 轉換。

如果需要了解 Pyhton3 的應用,可以參考 Python3 zip()

語法

zip 語法:

zip([iterable, ...])

引數說明:

  • iterabl – 一個或多個迭代器;

返回值

返回元組列表。

例項

以下例項展示了 zip 的使用方法:

>>>a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b)     # 打包為元組的列表
[(1, 4), (2, 5), (3, 6)]
>>> zip(a,c)              # 元素個數與最短的列表一致
[(1, 4), (2, 5), (3, 6)]
>>> 
zip(*zipped) # 與 zip 相反,*zipped 可理解為解壓,返回二維矩陣式 [(1, 2, 3), (4, 5, 6)]

參考文獻:

  1. http://www.runoob.com/python/python-func-zip.html