首頁 > 後端開發 > Python教學 > 為什麼在對列表值求和時,我的「for i in ar」迴圈中會出現 IndexError?

為什麼在對列表值求和時,我的「for i in ar」迴圈中會出現 IndexError?

Linda Hamilton
發布: 2024-11-03 13:44:02
原創
965 人瀏覽過

Why Do I Get an IndexError in My

「for i in ar」循環中的IndexError:了解迭代

嘗試使用for 循環對列表的值求和時,可能會遇到IndexError 、類型錯誤或不正確的結果。此錯誤是由於清單索引的錯誤使用而產生的。

請考慮以下程式碼:

<code class="python">def sumAnArray(ar):
    theSum = 0
    for i in ar:
        theSum = theSum + ar[i]
    return theSum</code>
登入後複製

這裡,我們打算循環遍歷列表並累積 theSum 中的值。但是,程式碼會觸發 IndexError,因為 i 代表清單的每個元素,而不是其索引。

要正確循環列表並存取其元素,應將程式碼修改為:

<code class="python">def sumAnArray(ar):
    theSum = 0
    for i in ar:
        theSum = theSum + i
    return theSum</code>
登入後複製

或者,可以使用範圍來迭代有效的列表索引:

<code class="python">def sumAnArray(ar):
    theSum = 0
    for i in range(len(ar)):
        theSum = theSum + ar[i]
    return theSum</code>
登入後複製

這些修改確保i 表示清單中的有效索引,防止IndexError 並能夠正確計算總和。

以上是為什麼在對列表值求和時,我的「for i in ar」迴圈中會出現 IndexError?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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