Ralat Tugasan dalam Manipulasi Senarai: Indeks Di Luar Julat Teka-teki
Apabila cuba membuat senarai dengan memberikan nilai kepada setiap elemen secara individu, anda mungkin menghadapi IndexError. Ini berlaku kerana, tidak seperti tatasusunan dalam bahasa lain, senarai Python tidak mempunyai indeks yang telah ditetapkan atau peruntukan memori.
Dalam kod yang diberikan:
i = [1, 2, 3, 5, 8, 13] j = [] k = 0 for l in i: j[k] = l k += 1
Isunya ialah kosong senarai j tidak mempunyai unsur pada mulanya. Menetapkan nilai kepada j[k] dalam lelaran pertama memerlukan j mempunyai sekurang-kurangnya satu elemen, tetapi itu tidak berlaku di sini. Oleh itu, IndexError.
Untuk menambah elemen pada senarai tanpa menghadapi ralat ini, gunakan kaedah append():
for l in i: j.append(l)
Untuk tugasan langsung seperti tatasusunan, anda boleh membuat pra-buat senaraikan dengan nilai Tiada dan kemudian tulis gantinya:
j = [None] * len(i) k = 0 for l in i: j[k] = l k += 1
Ingat, senarai Python berkembang secara dinamik apabila elemen ditambahkan, menghapuskan keperluan untuk peruntukan memori eksplisit.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Indeks Apabila Menetapkan Nilai kepada Senarai Python Kosong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!