Rumah > Artikel > pembangunan bahagian belakang > Mengapa Saya Mendapat Ralat Indeks dalam Gelung \'for i in ar\' Saya Apabila Menjumlahkan Nilai Senarai?
Apabila cuba menjumlahkan nilai senarai menggunakan gelung for, seseorang mungkin menghadapi Ralat Indeks , TypeError, atau hasil yang salah. Ralat ini timbul disebabkan oleh penggunaan indeks senarai yang salah.
Pertimbangkan kod berikut:
<code class="python">def sumAnArray(ar): theSum = 0 for i in ar: theSum = theSum + ar[i] return theSum</code>
Di sini, kami berhasrat untuk mengulang senarai dan mengumpul nilai dalam Jumlah. Walau bagaimanapun, kod tersebut mencetuskan IndexError kerana i mewakili setiap elemen senarai, bukan indeksnya.
Untuk menggelung senarai dengan betul dan mengakses elemennya, seseorang harus mengubah suai kod kepada:
<code class="python">def sumAnArray(ar): theSum = 0 for i in ar: theSum = theSum + i return theSum</code>
Sebagai alternatif, seseorang boleh menggunakan julat untuk mengulangi indeks senarai yang sah:
<code class="python">def sumAnArray(ar): theSum = 0 for i in range(len(ar)): theSum = theSum + ar[i] return theSum</code>
Pengubahsuaian ini memastikan bahawa i mewakili indeks yang sah dalam senarai, menghalang Ralat Indeks dan membolehkan pengiraan jumlah yang betul.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Indeks dalam Gelung \'for i in ar\' Saya Apabila Menjumlahkan Nilai Senarai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!