首頁 > 後端開發 > Python教學 > 如何在 Python 中並行迭代兩個列表?

如何在 Python 中並行迭代兩個列表?

DDD
發布: 2024-12-22 11:28:10
原創
187 人瀏覽過

How Do I Iterate Through Two Lists in Parallel in Python?

如何並行迭代兩個列表

給定兩個列表,一個常見的任務是成對迭代它們。雖然迭代索引是一種可行的方法,但它可能不是最 Pythonic 的解決方案。

Python 3 解

在Python 3 中,zip() 函數傳回元組的迭代器,使其成為一種並行迭代多個可迭代物件的高效且簡潔的方法。語法為:

for element_1, element_2 in zip(iterable_1, iterable_2):
    ...
登入後複製
for f, b in zip(foo, bar):
    print(f, b)
登入後複製

Python 2 解

在 Python 2 中,zip() 傳回元組列表,這對大型資料集可能效率低。為了避免建立不必要的臨時變量,請考慮使用itertools.izip() 作為迭代器:

import itertools
for f, b in itertools.izip(foo, bar):
    print(f, b)
登入後複製

如果需要,可以使用itertools.izip_longest() 進行迭代,直到兩個可迭代物件都用完,填補缺失具有指定填充值的值(預設為無)。

鍵點

  • zip() 函數可以同時迭代多個可迭代物件。
  • 在 Python 3 中,zip() 傳回元組的迭代器。
  • 在 Python 2 中、 zip() 傳回元組列表,而 itertools.izip() 和itertools.izip_longest() 提供迭代器以提高效率。

以上是如何在 Python 中並行迭代兩個列表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板