Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Saya Mendapat Ralat Indeks dalam Gelung \'for i in ar\' Saya Apabila Menjumlahkan Nilai Senarai?

Mengapa Saya Mendapat Ralat Indeks dalam Gelung \'for i in ar\' Saya Apabila Menjumlahkan Nilai Senarai?

Linda Hamilton
Lepaskan: 2024-11-03 13:44:02
asal
972 orang telah melayarinya

Why Do I Get an IndexError in My

IndexError dalam Gelung "for i in ar": Memahami Lelaran

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan