Memahami Perbezaan Antara Tugasan Slice dan Tugasan Langsung dalam Senarai
Dalam Python, tugasan slice membenarkan manipulasi elemen senarai yang cekap. Walaupun ia biasanya digunakan dengan indeks bukan lalai, penggunaannya dengan indeks hirisan seperti a_list[:] = ['foo', 'bar'] boleh mengelirukan jika dibandingkan dengan tugasan langsung seperti a_list = ['foo', 'bar '].
Tugasan Langsung
a_list = ['foo', 'bar'] mencipta senarai baharu dalam ingatan, memperuntukkannya kepada pembolehubah a_list. Tindakan ini menimpa sebarang data sedia ada dalam a_list dan senarai asal dibuang.
Slice Assignment
a_list[:] = ['foo', 'bar'] adalah lebih bernuansa. Ia melibatkan memanggil kaedah __setitem__ objek a_list dengan kepingan (mewakili indeks 0 kepada len(a_list) - 1) sebagai indeks. Nilai yang disediakan juga ialah senarai, dicipta dalam ingatan.
Kaedah __setitem__ kemudian:
Perbezaan Utama
Atas ialah kandungan terperinci Bila hendak menggunakan Slice Assignment vs. Direct Assignment dalam Senarai Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!