理解Python 的Zip 函數:解開謎團
當使用多個相同長度的清單時,人們經常試圖將它們組合成一個數據集。這就是 Python 的 zip 函數的閃光點。然而,當對預期結果產生誤解時,就會出現一個常見的陷阱。
為了說明這一點,請考慮建立三個清單 x1、x2 和 x3 的場景,每個清單包含 20 個元素。在呼叫 zip(x1, x2, x3) 時,人們可能會預期一個包含三個元素的清單。然而,你實際上得到的是一個 20 個三元組的清單。
困惑?別擔心,根本原因很簡單。 zip 透過組合輸入清單中對應索引的元素進行操作。在本例中,它會建立 20 個元組,每個元組由 x1 中的一個元素、x2 中的一個元素和 x3 中的一個元素組成。這種誤解源自於假設 zip 產生列表列表而不是元組列表。
為了證明這一點:
a = b = c = range(20) result = zip(a, b, c) print(result) # Output: [(0, 0, 0), (1, 1, 1), ... (19, 19, 19)] print(len(result)) # Output: 20 print(len(result[0])) # Output: 3
如上所示,結果包含 20 個三元組,每個包含三個元素。若要確定每個元組中的元素數量,請檢查第一個元組的長度。
以上是Python 的 Zip 函數實際上如何處理多個清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!