Cara Menggabungkan Senarai dalam Python

Cara Menggabungkan Senarai Dalam Python



Senarai Python adalah struktur data yang serba boleh dan digunakan secara meluas yang membenarkan penyimpanan dan manipulasi koleksi item. Satu operasi biasa apabila bekerja dengan senarai ialah penggabungan yang melibatkan penggabungan dua atau lebih senarai untuk mencipta senarai baharu. Proses ini amat berguna apabila menggabungkan data atau membuat senarai yang lebih besar daripada yang lebih kecil. Penggabungan senarai boleh dicapai menggunakan pelbagai kaedah, dan memahami teknik ini adalah asas untuk berfungsi dengan cekap dengan senarai dalam Python. Sama ada anda menggabungkan senarai nombor, rentetan atau objek kompleks, menguasai gabungan senarai membolehkan anda memanipulasi dan mengatur data dalam pelbagai cara.

Contoh 1: Menggabungkan Senarai dengan Operator '+'.

Kita boleh menggunakan operator '+' dalam Python untuk menggabungkan senarai. Menggunakan pengendali '+', anda boleh menyertai dua atau lebih senarai untuk membentuk senarai baharu. Apabila anda menggunakan pengendali '+' dengan senarai, senarai baharu dibuat dan elemen senarai asal disalin ke senarai baharu mengikut susunan yang dipaparkan.

Berikut adalah contoh mudah:







lembaran 1 = [ 1 , 2 , 3 ]

senarai2 = [ 4 , 5 , 6 ]

senarai_hasil = senarai1 + senarai2

cetak ( senarai_hasil )

Kami mempunyai dua senarai dalam ilustrasi ini: 'senarai1' dan 'senarai2'. Kami menggunakan pengendali '+' untuk menyepadukan mereka ke dalam satu senarai. Apabila digunakan dengan senarai, pengendali '+' menggabungkannya yang bermaksud ia menggabungkan elemen senarai kedua ke penghujung senarai pertama. Jadi, selepas melaksanakan 'senarai_hasil = senarai1 + senarai2', 'senarai_hasil' akan mengandungi unsur-unsur kedua-dua 'senarai1' dan 'senarai2' dalam susunan ia digabungkan.





Walaupun kaedah ini ringkas, perlu diingat bahawa ia mencipta senarai baharu yang mungkin tidak cekap untuk senarai besar disebabkan oleh overhed mencipta salinan.





Contoh 2: Menggunakan Kaedah Extend()

Item bagi iterable boleh dilampirkan pada penghujung senarai sedia ada menggunakan kaedah extend(). Ia mengubah suai senarai asal yang ada, tidak seperti pengendali '+' yang mencipta senarai baharu.

Katakan kami mempunyai senarai pelajar dalam kelas, dan kami ingin memanjangkan senarai ini dengan menambah nama pelajar baharu yang baru menyertai menggunakan kaedah extend(). Inilah cara anda boleh melakukannya:



pelajar_kelas = [ 'Alice' , 'Bella' , 'Charlie' ]

pelajar_baru = [ 'David' , 'Eva' , 'Adam' ]

pelajar_kelas. memanjangkan ( pelajar_baru )

cetak ( 'Senarai Pelajar Kemas Kini:' , pelajar_kelas )

Dalam contoh ini, senarai asal iaitu 'kelas_pelajar' mengandungi nama pelajar sedia ada. Senarai 'pelajar_baru' termasuk nama pelajar yang baru menyertai kelas. Dengan menggunakan kaedah extend(), kami menambah nama pelajar baharu pada penghujung senarai asal.

Contoh 3: Menggunakan Operator '+=' untuk Penggabungan

Pengendali '+=' ialah singkatan untuk kaedah extend(). Ia mengubah suai senarai di tempatnya, menggabungkan elemen senarai sebelah kanan ke dalam senarai sebelah kiri.

Katakan kami mempunyai senarai warna kegemaran dan kami ingin mengemas kininya dengan menambah lebih banyak warna menggunakan pengendali '+='.

warna_kegemaran = [ 'biru' , 'hijau' , 'merah' ]

tambahan_warna = [ 'ungu' , 'oren' , 'kuning' ]

warna_kegemaran + = tambahan_warna

cetak ( 'Warna Kegemaran Kemas Kini:' , warna_kegemaran )

Dalam senario ini, kami mulakan dengan senarai warna kegemaran kami yang diwakili oleh 'warna_kegemaran'. Kemudian, kami mempunyai beberapa warna baharu yang ingin kami sertakan dalam senarai 'warna_tambahan'. Menggunakan '+= operator', kami menggabungkan warna baharu dengan kegemaran sedia ada kami, mengubah suai senarai 'warna_kegemaran'.

Selepas operasi, apabila kami mencetak 'Warna Kegemaran Kami yang Dikemas Kini', kami dapat melihat hasil berikut:

Contoh 4: Menggunakan Operator “*”.

Operator “*” boleh digunakan untuk replikasi senarai. Tetapi apabila digunakan pada senarai, ia boleh menggabungkannya dengan mengulangi elemen.

Berikut adalah contoh:

senarai_asli = [ 1 , 2 , 3 ]

concatenated_list = senarai_asal * 3

cetak ( concatenated_list )

Dalam kes ini, kita mulakan dengan 'senarai_asli' yang mengandungi elemen [1, 2, 3]. Menggunakan pengendali '*', kami mencipta senarai baharu iaitu 'senarai_bersambung' yang terdiri daripada tiga ulangan elemen daripada senarai asal.

Walaupun pendekatan ini kurang biasa untuk penggabungan, ia mempamerkan fleksibiliti pengendali Python.

Contoh 5: Menggunakan Fungsi Itertools.chain()

Fungsi itertools.chain() ialah sebahagian daripada modul 'itertools' dan digunakan untuk menggabungkan iterable (seperti senarai, tupel atau objek boleh lelar lain) menjadi satu 'iterable'. Tidak seperti beberapa kaedah penggabungan yang lain, itertools.chain() tidak mencipta senarai baharu tetapi menghasilkan iterator ke atas unsur-unsur iterabel input.

daripada itertools import rantai

L1 = [ 1 , 2 , 3 ]

L2 = [ 'x' , 'dan' , 'Dengan' ]

concatenated_iteable = rantai ( L1 , L2 )

senarai_hasil = senarai ( concatenated_iteable )

cetak ( senarai_hasil )

Dalam contoh yang diberikan, kami mempunyai dua senarai - 'L1' mengandungi nilai berangka [1, 2, 3] dan 'L2' mengandungi aksara abjad ['x', 'y', 'z']. Menggunakan fungsi itertools.chain(), kami menggabungkan senarai ini menjadi satu iterable, diwakili oleh 'concatenated_iterable'. Fungsi list() kemudiannya digunakan untuk menukar iterable kepada senarai yang menghasilkan senarai gabungan [1, 2, 3, “x”, “y”, “z”].

Contoh 6: Menghiris Senarai

Dengan menyediakan pelbagai indeks, penghirisan senarai ialah teknik yang membolehkan kami mendapatkan semula subset senarai. Ia melibatkan penggunaan operator titik bertindih (:) dalam kurungan segi empat sama untuk menunjukkan nilai mula, berhenti dan, secara pilihan, langkah.

Berikut adalah contoh kod:

senarai_sebenar = [ 1 , 2 , 3 , 4 , 5 ]

sliced_list = senarai_sebenar [ 1 : 4 ]

cetak ( sliced_list )

Kami memulakan ilustrasi dengan senarai nombor asal yang dilambangkan sebagai 'senarai_sebenar' yang mengandungi elemen [1, 2, 3, 4, 5]. Kami mengekstrak segmen tertentu senarai dengan menggunakan penghirisan senarai yang merupakan ciri berkuasa dalam Python. Potongan 'senarai_sebenar[1:4]' digunakan dalam contoh ini dan ia memilih elemen daripada indeks 1 hingga indeks 3 (tetapi bukan daripada indeks 4). Hasilnya ialah senarai baharu, bernama 'senarai_hirisan', yang mengandungi bahagian yang dihiris [2, 3, 4].

Contoh 7: Penggabungan dengan Fungsi Zip().

Fungsi zip() menggabungkan unsur-unsur daripada berbilang iterable, mencipta pasangan atau tuple elemen yang sepadan. Setiap elemen lelaran pada indeks yang sama digunakan untuk mencipta pasangan ini.

pelajar = [ 'Alice' , 'Bob' , 'Charlie' ]

gred = [ 85 , 92 , 78 ]

murid_gred_pasangan = zip ( pelajar , gred )

keputusan_dikt = dict ( murid_gred_pasangan )

cetak ( 'Pasangan Gred Pelajar:' , keputusan_dikt )

Dalam contoh ini, fungsi zip() memasangkan nama pelajar daripada senarai 'pelajar' dengan gred sepadan mereka daripada senarai 'gred' yang menghasilkan kamus di mana setiap pelajar dikaitkan dengan gred masing-masing.

Kesimpulan

Kesimpulannya, Python menawarkan pelbagai cara untuk menggabungkan senarai, masing-masing dengan kelebihannya. Semasa kami meneroka pelbagai kaedah, daripada pengendali '+' yang mudah kepada fungsi zip() yang lebih bernuansa, ternyata bahawa Python memenuhi gaya pengaturcaraan dan pilihan yang pelbagai. Bergantung pada kerja yang sedang dijalankan, faktor seperti kebolehbacaan, kecekapan memori dan jenis data yang sedang diproses akan menentukan kaedah yang terbaik.