首頁 > 後端開發 > Python教學 > 執行逐元素向量加法的最 Pythonic 方法是什麼?

執行逐元素向量加法的最 Pythonic 方法是什麼?

Susan Sarandon
發布: 2024-11-29 01:39:11
原創
500 人瀏覽過

What's the Most Pythonic Way to Perform Element-wise Vector Addition?

按元素向量加法:最Pythonic 的方法

假設您有兩個列表,list1 和list2,並且您想要執行逐個元素相加,產生一個新列表。實現這一目標的最 Pythonic 方法是什麼?

為了避免迭代清單的潛在緩慢且冗長的任務,有兩個高效且Pythonic 的選項:

  1. 使用帶有operator.add的map:
from operator import add
list(map(add, list1, list2))
登入後複製

這個方法使用map()函數將運算子模組中的新增操作套用到清單中每個對應的元素對。結果是轉換為列表的生成器物件。

  1. 使用zip 進行列表理解:
[sum(x) for x in zip(list1, list2)]
登入後複製

這裡,zip () 將兩個列表的元素組合成對,其中每一個列表對代表要相加的相應元素。然後列表理解迭代這些對並使用 sum() 累積它們的值,以列表的形式輸出所需的逐元素加法結果。

對於大型列表,請考慮使用更快的 itertools.izip 而不是 zip用於效能最佳化。然而,這兩種方法在大多數情況下都能提供出色的效率。

以上是執行逐元素向量加法的最 Pythonic 方法是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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