Menyemak Substring dalam Python: Alternatif untuk 'mengandungi' dan 'indexOf'

Python

Memahami Kaedah Rentetan dalam Python

Pengaturcara Python selalunya perlu menyemak sama ada subrentetan wujud dalam rentetan. Walaupun banyak bahasa menawarkan kaedah seperti `mengandungi` atau `indexOf`, Python mempunyai cara tersendiri untuk mengendalikan keperluan biasa ini. Dalam artikel ini, kami akan meneroka cara anda boleh melakukan semakan subrentetan dalam Python dengan cekap.

Sama ada anda baru menggunakan Python atau beralih daripada bahasa pengaturcaraan lain, memahami kaedah ini adalah penting. Kami akan memberikan contoh dan menerangkan amalan terbaik untuk menyemak subrentetan, memastikan anda boleh menulis kod Python yang bersih dan berkesan.

Perintah Penerangan
in Menyemak sama ada subrentetan wujud dalam rentetan utama, mengembalikan True atau False.
find Mengembalikan indeks terendah dalam rentetan tempat subrentetan ditemui; mengembalikan -1 jika tidak dijumpai.
def Mentakrifkan blok fungsi kod yang hanya berjalan apabila ia dipanggil.
for Digunakan untuk menggelung pada jujukan (seperti senarai, tuple, kamus, set atau rentetan).
if not Pernyataan bersyarat yang melaksanakan kod jika syarat adalah Palsu.
continue Melangkau baki kod di dalam gelung untuk lelaran semasa sahaja, kemudian meneruskan dengan lelaran seterusnya.

Memahami Pemeriksaan Substring dalam Python

Skrip yang disediakan menunjukkan cara menyemak subrentetan dalam Python menggunakan dua kaedah berbeza: the kata kunci dan kaedah. Skrip pertama mentakrifkan fungsi, , yang memerlukan dua hujah: main_string dan . Ia kembali jika wujud dalam main_string dan sebaliknya. Ini dicapai menggunakan kata kunci, yang merupakan cara yang mudah dan cekap untuk melakukan semakan subrentetan dalam Python. Skrip itu kemudiannya berulang pada senarai rentetan menggunakan a gelung, dan jika substring tidak ditemui dalam rentetan semasa, ia menggunakan pernyataan untuk melangkau ke lelaran seterusnya.

Skrip kedua menggunakan pendekatan yang sama tetapi memanfaatkan kaedah sebaliknya. Fungsinya menyemak jika terdapat dalam main_string dengan kembali jika kaedah tidak kembali . The find kaedah mencari dan mengembalikan indeks terendah di mana ia ditemui, atau jika ia tidak dijumpai. Kaedah ini memberikan lebih kawalan jika anda memerlukan kedudukan , tetapi untuk semakan mudah, yang in kata kunci adalah lebih mudah. Kedua-dua skrip menggambarkan cara memeriksa subrentetan dengan cekap dan mengendalikan kes di mana subrentetan tidak ditemui, membenarkan kod Python yang bersih dan boleh dibaca.

Bagaimana untuk menyemak subrentetan dalam Python

Contoh Skrip Python Menggunakan Kata Kunci 'dalam'

def contains_substring(main_string, substring):
    return substring in main_string

strings_to_check = ["hello world", "Python programming", "substring search"]
substring = "Python"

for string in strings_to_check:
    if not contains_substring(string, substring):
        continue
    print(f"'{substring}' found in '{string}'")

Mencari Substrings Menggunakan Kaedah 'find' Python

Contoh Skrip Python Menggunakan Kaedah 'cari'

def contains_substring_with_find(main_string, substring):
    return main_string.find(substring) != -1

strings_to_check = ["example string", "testing find method", "no match here"]
substring = "find"

for string in strings_to_check:
    if not contains_substring_with_find(string, substring):
        continue
    print(f"'{substring}' found in '{string}'")

Meneroka Kaedah Rentetan Alternatif dalam Python

Sebagai tambahan kepada kata kunci dan kaedah, Python menawarkan kaedah rentetan lain yang boleh berguna untuk menyemak subrentetan. Salah satu kaedah tersebut ialah , yang mengembalikan bilangan kejadian tidak bertindih subrentetan dalam rentetan. Walaupun ia bukan pengganti langsung untuk contains atau , ia boleh digunakan untuk menentukan sama ada subrentetan wujud dengan menyemak sama ada kiraan lebih besar daripada sifar. Kaedah lain ialah , yang menyemak sama ada rentetan bermula dengan subrentetan tertentu. Kaedah ini amat berguna apabila anda perlu mengesahkan awalan dalam rentetan, seperti menyemak sama ada URL bermula dengan 'http'.

Begitu juga dengan kaedah menyemak sama ada rentetan berakhir dengan subrentetan tertentu. Ini berguna untuk mengesahkan sambungan fail atau akhiran lain. Python juga menyediakan modul untuk carian subrentetan yang lebih maju menggunakan ungkapan biasa. The fungsi membolehkan padanan corak dalam rentetan, menyediakan cara yang berkuasa untuk mencari subrentetan yang kompleks. Walaupun ungkapan biasa boleh menjadi lebih kompleks untuk ditulis dan difahami, ia menawarkan fleksibiliti dan kuasa untuk carian subrentetan yang rumit. Kaedah alternatif ini menyediakan pengaturcara Python dengan pelbagai alat untuk mengendalikan semakan subrentetan, memenuhi keperluan dan kes penggunaan yang berbeza.

Soalan Lazim Mengenai Kaedah Substring dalam Python

  1. Bagaimanakah saya boleh menyemak sama ada rentetan mengandungi subrentetan dalam Python?
  2. Anda boleh menggunakan kata kunci atau kaedah untuk menyemak sama ada rentetan mengandungi subrentetan.
  3. Apakah perbezaan antara dan kaedah?
  4. The kaedah mengembalikan -1 jika subrentetan tidak dijumpai, manakala kaedah kaedah menimbulkan ValueError.
  5. Bolehkah saya menggunakan ungkapan biasa untuk semakan substring dalam Python?
  6. Ya, anda boleh menggunakan fungsi daripada modul untuk carian subrentetan lanjutan.
  7. Bagaimanakah saya boleh menyemak sama ada rentetan bermula dengan subrentetan tertentu?
  8. Anda boleh menggunakan kaedah untuk menyemak sama ada rentetan bermula dengan subrentetan tertentu.
  9. Apakah kaedah yang boleh saya gunakan untuk menyemak sama ada rentetan berakhir dengan subrentetan tertentu?
  10. The kaedah boleh digunakan untuk menyemak sama ada rentetan berakhir dengan subrentetan tertentu.
  11. Adakah terdapat kaedah untuk mengira kejadian subrentetan dalam rentetan?
  12. Ya, yang kaedah mengembalikan bilangan kejadian tidak bertindih subrentetan dalam rentetan.
  13. Bagaimanakah saya boleh mengendalikan kes di mana subrentetan tidak dijumpai?
  14. Anda boleh menggunakan satu kenyataan dengan atau semak jika mengembalikan -1 untuk mengendalikan kes di mana subrentetan tidak ditemui.
  15. Adakah terdapat perbezaan prestasi antara kaedah ini?
  16. Ya, kaedah seperti dan biasanya lebih pantas untuk semakan mudah, manakala ungkapan biasa boleh menjadi lebih perlahan tetapi lebih berkuasa.

Pemikiran Akhir tentang Kaedah Substring dalam Python

Python tidak mempunyai a atau kaedah seperti beberapa bahasa lain. Walau bagaimanapun, ia menyediakan pelbagai cara untuk menyemak subrentetan, seperti kata kunci, the find kaedah, dan ungkapan biasa. Setiap kaedah mempunyai kelebihannya, menjadikannya penting untuk memilih yang betul berdasarkan keperluan khusus anda. Dengan menguasai teknik ini, anda boleh mengendalikan semakan subrentetan dengan cekap dan menulis kod Python yang bersih dan berkesan.