Kelakuan senarai yang berbeza.__iadd__ dan list.__add__
Dalam Python, objek senarai menyediakan dua kaedah untuk penggabungan senarai: iadd dan __tambah__. Walaupun tujuannya sama, kaedah ini menunjukkan perbezaan yang ketara dalam tingkah laku.
iadd ialah pengendali penggabungan senarai di tempat. Apabila digunakan dengan operator =, ia mengubah suai senarai sedia ada di tempatnya. Contohnya:
x = [1, 2, 3, 4] x += [4] print(x) # Output: [1, 2, 3, 4, 4]
Dalam kes ini, panggilan ke x = [4] menggunakan iadd untuk menambahkan elemen 4 pada senarai x, menghasilkan senarai yang diubah suai [1, 2, 3, 4, 4].
Sebaliknya, tambah ialah pengendali penambahan senarai. Apabila digunakan dengan pengendali, ia mengembalikan senarai baharu dan bukannya mengubah suai yang asal. Contohnya:
x = [1, 2, 3, 4] x = x + [4] print(x) # Output: [1, 2, 3, 4, 4] print(y) # Output: [1, 2, 3, 4]
Dalam kes ini, panggilan ke x = x [4] menggunakan tambah untuk mencipta senarai baharu yang menggabungkan unsur x dan [4]. Senarai asal x kekal tidak berubah.
Perbezaan tingkah laku ini disebabkan oleh konsep kebolehubah dalam Python. Senarai ialah objek boleh ubah, bermakna pengubahsuaian di tempat boleh dibuat kepada mereka. iadd memanfaatkan kebolehubahan ini untuk mengubah suai terus senarai, manakala tambah mencipta senarai baharu untuk mengekalkan kebolehubahan yang asal.
Atas ialah kandungan terperinci Apakah perbezaan utama antara `list.__iadd__` dan `list.__add__` dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!