Alimerkkijonojen tarkistaminen Pythonissa: vaihtoehdot 'contains' ja 'indexOf'

Python

Pythonin merkkijonomenetelmien ymmärtäminen

Python-ohjelmoijien on usein tarkistettava, onko merkkijonossa alimerkkijono. Vaikka monet kielet tarjoavat menetelmiä, kuten "contains" tai "indexOf", Pythonilla on oma tapansa käsitellä tätä yleistä vaatimusta. Tässä artikkelissa tutkimme, kuinka voit suorittaa osamerkkijonotarkistuksia Pythonissa tehokkaasti.

Olitpa uusi Pythonissa tai siirtymässä toisesta ohjelmointikielestä, näiden menetelmien ymmärtäminen on ratkaisevan tärkeää. Annamme esimerkkejä ja selitämme parhaat käytännöt alimerkkijonojen tarkistamiseen, jotta voit kirjoittaa puhtaan ja tehokkaan Python-koodin.

Komento Kuvaus
in Tarkistaa, onko päämerkkijonossa alimerkkijono, joka palauttaa True tai False.
find Palauttaa alimman indeksin merkkijonosta, josta osamerkkijono löytyy; palauttaa -1, jos ei löydy.
def Määrittää koodin toimintolohkon, joka toimii vain, kun sitä kutsutaan.
for Käytetään sekvenssin (kuten luettelon, tuplen, sanakirjan, joukon tai merkkijonon) yli kiertämiseen.
if not Ehdollinen lauseke, joka suorittaa koodin, jos ehto on False.
continue Ohittaa muun osan silmukan sisällä olevasta koodista vain nykyistä iteraatiota varten ja jatkaa sitten seuraavalla iteraatiolla.

Pythonin osamerkkijonojen tarkistusten ymmärtäminen

Toimitetut komentosarjat osoittavat, kuinka Pythonissa voidaan tarkistaa osamerkkijonot kahdella eri menetelmällä: avainsana ja menetelmä. Ensimmäinen komentosarja määrittelee funktion, , se vaatii kaksi argumenttia: main_string ja . Se palaa jos on olemassa sisällä main_string ja muuten. Tämä saavutetaan käyttämällä avainsana, joka on yksinkertainen ja tehokas tapa suorittaa osamerkkijonotarkistuksia Pythonissa. Skripti toistuu sitten merkkijonoluettelossa käyttämällä a silmukka, ja jos substring ei löydy nykyisestä merkkijonosta, se käyttää lauseke siirtyäksesi seuraavaan iteraatioon.

Toinen komentosarja käyttää samanlaista lähestymistapaa, mutta hyödyntää menetelmän sijaan. Toiminto tarkistaa, onko on läsnä main_string palaamalla jos menetelmä ei palaa . The find menetelmä etsii ja palauttaa alimman indeksin, josta se löytyy, tai jos sitä ei löydy. Tämä menetelmä tarjoaa paremman hallinnan, jos tarvitset paikantimen , mutta yksinkertaista tarkistusta varten in avainsana on selkeämpi. Molemmat skriptit havainnollistavat kuinka tehokkaasti tarkistaa osamerkkijonot ja käsitellä tapauksia, joissa osamerkkijonoa ei löydy, mikä mahdollistaa puhtaan ja luettavan Python-koodin.

Kuinka tarkistaa alimerkkijonot Pythonissa

Python-skriptiesimerkki "in"-avainsanan käyttämisestä

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}'")

Alimerkkijonojen etsiminen Pythonin "etsi"-menetelmällä

Python-skriptiesimerkki 'etsi'-menetelmällä

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}'")

Vaihtoehtoisten merkkijonomenetelmien tutkiminen Pythonissa

Lisäksi avainsana ja Python tarjoaa muita merkkijonomenetelmiä, jotka voivat olla hyödyllisiä alimerkkijonojen tarkistamisessa. Yksi tällainen menetelmä on , joka palauttaa alimerkkijonon ei-päällekkäisten esiintymien lukumäärän merkkijonossa. Vaikka se ei ole suora korvike contains tai , sitä voidaan käyttää määrittämään, onko osamerkkijono olemassa tarkistamalla, onko määrä suurempi kuin nolla. Toinen menetelmä on , joka tarkistaa, alkaako merkkijono määritetyllä osamerkkijonolla. Tämä menetelmä on erityisen hyödyllinen silloin, kun sinun on tarkistettava merkkijonojen etuliitteet, kuten tarkistettaessa, alkaako URL-osoite http:llä.

Samoin, menetelmä tarkistaa, päättyykö merkkijono tiettyyn osamerkkijonoon. Tästä on apua tiedostopäätteiden tai muiden jälkiliitteiden tarkistamisessa. Python tarjoaa myös moduuli edistyneempiin osamerkkijonohakuihin säännöllisten lausekkeiden avulla. The toiminto mahdollistaa kuvioiden sovituksen merkkijonojen sisällä, mikä tarjoaa tehokkaan tavan löytää monimutkaisia ​​osamerkkijonoja. Vaikka säännölliset lausekkeet voivat olla monimutkaisempia kirjoittaa ja ymmärtää, ne tarjoavat joustavuutta ja tehoa monimutkaisiin osamerkkijonohakuihin. Nämä vaihtoehtoiset menetelmät tarjoavat Python-ohjelmoijille erilaisia ​​työkaluja osamerkkijonojen tarkistusten käsittelemiseen, erilaisten tarpeiden ja käyttötapausten huomioon ottamiseksi.

Yleisiä kysymyksiä Pythonin osamerkkijonomenetelmistä

  1. Kuinka voin tarkistaa, sisältääkö merkkijono alimerkkijonon Pythonissa?
  2. Voit käyttää avainsana tai menetelmä tarkistaaksesi, sisältääkö merkkijono alimerkkijonon.
  3. Mitä eroa on ja menetelmiä?
  4. The Metodi palauttaa -1, jos osamerkkijonoa ei löydy, kun taas menetelmä aiheuttaa ValueErrorin.
  5. Voinko käyttää säännöllisiä lausekkeita Pythonin osamerkkijonojen tarkistukseen?
  6. Kyllä, voit käyttää toiminto alkaen moduuli edistyneille osamerkkijonohauille.
  7. Kuinka tarkistan, alkaako merkkijono tietyllä osamerkkijonolla?
  8. Voit käyttää menetelmä tarkistaaksesi, alkaako merkkijono tietyllä osamerkkijonolla.
  9. Millä menetelmällä voin tarkistaa, päättyykö merkkijono tiettyyn osamerkkijonoon?
  10. The menetelmää voidaan käyttää tarkistamaan, päättyykö merkkijono tiettyyn osamerkkijonoon.
  11. Onko olemassa menetelmää alimerkkijonon esiintymien laskemiseksi merkkijonossa?
  12. Kyllä -menetelmä palauttaa merkkijonon alimerkkijonon ei-päällekkäisten esiintymien lukumäärän.
  13. Miten voin käsitellä tapauksia, joissa alimerkkijonoa ei löydy?
  14. Voit käyttää an lausunto kanssa tai tarkista jos palauttaa -1 käsittelemään tapauksia, joissa osamerkkijonoa ei löydy.
  15. Onko näiden menetelmien suorituskyvyssä eroja?
  16. Kyllä, menetelmät kuten ja ovat yleensä nopeampia yksinkertaisissa tarkistuksissa, kun taas säännölliset lausekkeet voivat olla hitaampia mutta tehokkaampia.

Viimeiset ajatukset Pythonin osamerkkijonomenetelmistä

Pythonissa ei ole a tai menetelmällä kuten jotkut muut kielet. Se tarjoaa kuitenkin useita tapoja tarkistaa osamerkkijonot, kuten avainsana, find menetelmä ja säännölliset lausekkeet. Jokaisella menetelmällä on omat etunsa, joten on tärkeää valita oikea omien tarpeidesi perusteella. Hallitsemalla näitä tekniikoita voit tehokkaasti käsitellä osamerkkijonotarkistuksia ja kirjoittaa puhdasta, tehokasta Python-koodia.