Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mencipta Senarai Bersaiz Pembolehubah dalam Python dan Elakkan IndexError?

Bagaimana untuk Mencipta Senarai Bersaiz Pembolehubah dalam Python dan Elakkan IndexError?

Patricia Arquette
Patricia Arquetteasal
2024-12-05 04:32:13804semak imbas

How to Create Variable-Sized Lists in Python and Avoid IndexError?

Mencipta Senarai Bersaiz Pembolehubah dalam Python

Anda mahu mencipta senarai kosong dalam Python dengan kapasiti khusus untuk menyimpan elemen. Apabila cuba memberikan nilai kepada senarai ini, anda menghadapi IndexError. Ralat ini timbul kerana senarai Python berkelakuan berbeza daripada tatasusunan dalam bahasa lain.

Mengapa Kod Menghasilkan Ralat

Kod:

xs = list()
for i in range(0, 9):
   xs[i] = i

cuba mengakses elemen senarai yang tidak ditetapkan (xs[i]). Untuk membetulkannya, gunakan xs.append(value) untuk menambah elemen pada penghujung senarai sebaliknya:

xs = []
for i in range(0, 9):
   xs.append(i)

Membuat Senarai Kosong dengan Saiz Diberi

Untuk mencipta senarai kosong dengan saiz tetap, anda boleh menggunakan kaedah berikut:

  • 1. Menggunakan [Tiada] * n: Cipta senarai dengan n Tiada nilai:
xs = [None] * 10
  • 2. Menggunakan julat(x) (Python 2.X sahaja): Cipta senarai dari 0 hingga x-1:
xs = range(10)
  • 3. Menggunakan fungsi: Takrifkan fungsi untuk menjana senarai:
def create_list(size):
    xs = []
    for i in range(size):
        xs.append(i)
    return xs

xs = create_list(10)
  • 4. Pemahaman senarai: Gunakan pemahaman senarai untuk mencipta senarai:
xs = [i for i in range(10)]

Dengan menggunakan salah satu kaedah ini, anda boleh membuat senarai kosong saiz pembolehubah dalam Python dengan pasti.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Senarai Bersaiz Pembolehubah dalam Python dan Elakkan IndexError?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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