當前位置:首頁 » 編程語言 » 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方法返回的是一個元組,用它來創建鍵值對,簡單明了。

熱點內容
java軟體免費下載 發布:2025-03-20 10:26:01 瀏覽:705
安卓用什麼編譯 發布:2025-03-20 10:25:57 瀏覽:808
ftp中文軟體下載 發布:2025-03-20 10:07:47 瀏覽:508
nexus7android 發布:2025-03-20 10:06:58 瀏覽:619
安舍iq8如何修改密碼 發布:2025-03-20 10:06:17 瀏覽:880
解壓RTP 發布:2025-03-20 09:59:37 瀏覽:161
python量化分析 發布:2025-03-20 09:53:05 瀏覽:626
手機熱點有限的訪問許可權 發布:2025-03-20 09:50:46 瀏覽:440
為什麼安卓沒有ios系統流暢 發布:2025-03-20 09:50:43 瀏覽:793
python編程實例 發布:2025-03-20 09:48:19 瀏覽:294