Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Mentakrifkan dan Memulakan Tatasusunan Dua Dimensi dalam Python Tanpa Panjang Dipratentukan?

Bagaimana untuk Mentakrifkan dan Memulakan Tatasusunan Dua Dimensi dalam Python Tanpa Panjang Dipratentukan?

DDD
Lepaskan: 2024-12-13 20:48:35
asal
170 orang telah melayarinya

How to Define and Initialize a Two-Dimensional Array in Python Without Predefined Lengths?

Mentakrifkan Tatasusunan Dua Dimensi Tanpa Panjang Dimulakan

Apabila cuba mentakrif tatasusunan dua dimensi tanpa menyatakan panjangnya, anda mungkin menghadapi "IndexError: senarai indeks di luar julat." Ini berlaku disebabkan oleh senarai luar yang tidak dimulakan.

Untuk menyelesaikan masalah ini, gunakan "pemahaman senarai" Python untuk mula-mula memulakan senarai luar dengan senarai kosong:

w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
Salin selepas log masuk

Ini mencipta senarai yang mengandungi " h" senarai item "w", semuanya dimulakan kepada 0.

Kini, anda boleh menetapkan nilai pada tatasusunan elemen:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! range... 
Matrix[0][6] = 3 # valid
Salin selepas log masuk

Perhatikan bahawa tatasusunan ialah alamat utama "y", bermakna "indeks y" mendahului "indeks x."

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3; be careful with indexing! 
Salin selepas log masuk

Walaupun anda boleh menyesuaikan pembolehubah nama, menggunakan "x" dan "y" untuk indeks senarai dalam dan luar, masing-masing, membantu mengelakkan kekeliruan dengan tatasusunan bukan segi empat sama.

Atas ialah kandungan terperinci Bagaimana untuk Mentakrifkan dan Memulakan Tatasusunan Dua Dimensi dalam Python Tanpa Panjang Dipratentukan?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan