Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya boleh mencari subrentetan dengan cekap dalam senarai rentetan dalam Python?
Mengesan Subrentetan dalam Senarai Rentetan
Menentukan sama ada rentetan tertentu, seperti 'abc', muncul dalam elemen individu sesuatu list adalah tugas biasa dalam pengaturcaraan. Dalam Python, ini boleh dicapai menggunakan operator 'dalam' untuk memadankan subrentetan dalam rentetan. Walau bagaimanapun, pendekatan ini mungkin tidak selalu memberikan hasil yang diingini.
Pertimbangkan senarai rentetan berikut:
xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
Jika kami cuba menyemak sama ada 'abc' hadir dalam senarai menggunakan ungkapan berikut:
if 'abc' in xs:
ia akan kembali Palsu. Ini kerana 'in' menyemak padanan tepat dan 'abc' bukan padanan tepat untuk mana-mana item dalam senarai.
Untuk mengatasi had ini, kami boleh menggunakan mana-mana dan dalam fungsi Python untuk menentukan sama ada ' abc' muncul dalam mana-mana rentetan dalam senarai:
if any("abc" in s for s in xs): # ...
Ungkapan ini akan kembali Benar kerana 'abc' ialah subrentetan 'abc-123' dan 'abc-456'.
Selain itu, kita boleh mendapatkan senarai semua item yang mengandungi 'abc' menggunakan pemahaman senarai:
matching = [s for s in xs if "abc" in s]
Ini akan menghasilkan senarai yang mengandungi elemen 'abc-123' dan 'abc-456'.
Menggunakan teknik ini, pembangun boleh mencari dan mengesan dengan berkesan subrentetan dalam senarai rentetan, membolehkan pemprosesan data yang lebih komprehensif dan tepat.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mencari subrentetan dengan cekap dalam senarai rentetan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!