Agmented Assignment vs. Assignment
Bahasa pengaturcaraan Python menawarkan dua operator berbeza untuk penambahan senarai: iadd dan __add__ . Walaupun kedua-duanya menjalankan fungsi yang serupa, wujud perbezaan penting dalam tingkah laku mereka.
iadd (Tugasan Ditambah)
Pertimbangkan coretan kod berikut :
x = y = [1, 2, 3, 4] x += [4]
Apabila menggunakan __iadd__, senarai asal (x) diubah suai secara langsung, menyebabkan kedua-dua x dan y menunjuk ke senarai dikemas kini yang sama.
tambah (Tugasan)
Sebaliknya, menggunakan tambah mencipta senarai baharu seperti yang dilihat di bawah:
x = y = [1, 2, 3, 4] x = x + [4]
Dalam kes ini, tambah menjana senarai baharu yang mengandungi gabungan elemen x dan [4]. Walau bagaimanapun, memandangkan tugasan adalah kepada x, hanya x menunjuk ke senarai baharu, meninggalkan y tidak berubah.
Penjelasan
iadd direka untuk pengubahsuaian di tempat senarai. Ia mengubah senarai sedia ada tanpa membuat senarai baharu. Tingkah laku ini amat berguna apabila mengoptimumkan penggunaan memori atau apabila mengekalkan rujukan kepada senarai yang dikemas kini.
Sebaliknya, tambah mencipta senarai yang berbeza sepenuhnya. Ini sesuai untuk senario di mana senarai asal perlu kekal tidak berubah atau apabila salinan senarai yang diubah suai dikehendaki.
Ringkasnya, iadd mengubah suai senarai asal manakala tambah menjana senarai baharu. Memahami perbezaan ini adalah penting untuk manipulasi senarai yang berkesan dalam Python.
Atas ialah kandungan terperinci Penambahan Senarai Python: Bila Untuk Menggunakan ` =` (iadd) vs `` (tambah)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!