當前位置:首頁 » 編程語言 » python的zip

python的zip

發布時間: 2024-10-18 18:56:05

1. python中zip函數有哪些高級用法

zip() 功能是從參數的多個迭代器中選取元素組合成一個新的迭代器。顧名思義,它就是一個將對象進行打包和解包的函數。

它可以傳入的參數包括;元組、列表、字典等迭代器

它返回一個zip對象,其內部元素為元組,一組一組的,可以轉化為列表或元組,這里要強調一下,Python2和Python3中返回的zip對象有所不同。

Python3中zip()函數再不再返回list對象,但是可以通過list強行轉換。(類似的函數變化還有dictionary關聯的keys()、values()、items(),map(),filter())。

打包zip(iterables)

上面的代碼使用的環境是Python3.6,其中list (z)操作就是強制轉換。注意一個問題,a和b這兩個列表是不同長短的,這時候zip函數就會匹配完最短的那個便結束。

當zip函數的參數只有一個時,它將從iterable中依次取一個元素,組成一個元組。

解包zip(*iterables)

解包,zip 相反,可理解為解壓,返回多維矩陣形式,有幾個組元素就返回幾維的。

比如,下面我是用三個列表組合起來的迭代式,那麼解壓後就返回三維的矩陣

zip高級用法

講完了基本的再來說一下該函數的高級用法。高級用法離不開一個詞:Pythonic,就是將代碼寫的更優雅美觀,看起來有逼格!

1. 列表推導

例如:

a = [1,2,3,4]
b = [5,6,7,8]

我們要同時遍歷a、b,且要對它們進行操作,那就要放在同一個for循環內,zip函數正好合適

注意:如果是Python2環境中,要使用izip才能提高效率。

當然,如果你需要對下標進行操作,那麼還需要加上enumerate函數

2. 使用zip創建鍵值對,zip方法返回的是一個元組,用它來創建鍵值對,簡單明了。

熱點內容
phpfile亂碼 發布:2025-07-16 03:57:54 瀏覽:93
手機存儲空間擴容 發布:2025-07-16 03:52:07 瀏覽:861
小米4清除緩存 發布:2025-07-16 03:03:17 瀏覽:563
如何緩解壓力英語作文 發布:2025-07-16 03:03:15 瀏覽:15
手機視頻怎麼緩存 發布:2025-07-16 02:59:05 瀏覽:932
安卓手機設備在哪裡找 發布:2025-07-16 02:49:28 瀏覽:357
php建立數組 發布:2025-07-16 02:34:30 瀏覽:284
oracle存儲過程同步 發布:2025-07-16 02:29:18 瀏覽:941
歐諾s買哪個配置的好 發布:2025-07-16 02:26:22 瀏覽:559
熱點可以建立ftp嗎 發布:2025-07-16 02:26:21 瀏覽:304