Bagaimana untuk Menapis Rentetan dalam Senarai Berdasarkan Substrings?

Susan Sarandon
Lepaskan: 2024-10-20 06:13:29
asal
352 orang telah melayarinya

How to Filter Strings in a List Based on Substrings?

Menapis Rentetan dalam Senarai Berdasarkan Subrentetan

Memandangkan senarai rentetan, bagaimana kita boleh menapisnya untuk memasukkan hanya rentetan yang mengandungi subrentetan tertentu? Sebagai contoh, jika kami mempunyai senarai ['a', 'ab', 'abc', 'bac'], kami ingin mendapatkan senarai ['ab', 'abc'].

Penyelesaian Menggunakan Pemahaman Senarai

Satu kaedah yang cekap melibatkan penggunaan pemahaman senarai Python:

<code class="python">lst = ['a', 'ab', 'abc', 'bac']
result = [k for k in lst if 'ab' in k]</code>
Salin selepas log masuk

Kefahaman senarai berulang pada setiap rentetan k dalam lst dan menyemak sama ada subrentetan 'ab ' wujud di dalamnya. Jika benar, k ditambah pada senarai hasil.

Pendekatan Alternatif Menggunakan Penapis

Sebagai alternatif, kita boleh menggunakan fungsi penapis untuk mencapai hasil yang sama:

<code class="python">lst = ['a', 'ab', 'abc', 'bac']
result = list(filter(lambda k: 'ab' in k, lst))</code>
Salin selepas log masuk

Di sini, fungsi penapis mengambil fungsi lambda yang menyemak kehadiran 'ab' dalam setiap rentetan. Peulang yang terhasil kemudiannya ditukar kepada senarai menggunakan senarai.

Kesimpulan

Kedua-dua pemahaman senarai dan fungsi penapis menawarkan cara yang berkesan untuk menapis senarai rentetan berdasarkan spesifik kandungan. Pilihan antara dua kaedah bergantung pada keutamaan peribadi dan kebolehbacaan kod.

Atas ialah kandungan terperinci Bagaimana untuk Menapis Rentetan dalam Senarai Berdasarkan Substrings?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan