Se etter understrenger i Python: Alternativer til 'contains' og 'indexOf'

Python

Forstå strengmetoder i Python

Python-programmerere trenger ofte å sjekke om en understreng finnes i en streng. Mens mange språk tilbyr metoder som `contains` eller `indexOf`, har Python sin egen måte å håndtere dette vanlige kravet på. I denne artikkelen skal vi utforske hvordan du kan utføre understrengsjekker i Python effektivt.

Enten du er ny på Python eller går over fra et annet programmeringsspråk, er det avgjørende å forstå disse metodene. Vi vil gi eksempler og forklare de beste fremgangsmåtene for å sjekke understrenger, og sikre at du kan skrive ren og effektiv Python-kode.

Kommando Beskrivelse
in Sjekker om en understreng finnes i en hovedstreng, og returnerer True eller False.
find Returnerer den laveste indeksen i strengen der delstrengen er funnet; returnerer -1 hvis ikke funnet.
def Definerer en funksjonsblokk med kode som bare kjører når den kalles.
for Brukes til å gå over en sekvens (som en liste, tuppel, ordbok, sett eller streng).
if not Betinget setning som kjører kode hvis betingelsen er falsk.
continue Hopper over resten av koden inne i loopen kun for gjeldende iterasjon, og fortsetter deretter med neste iterasjon.

Forstå delstrengsjekker i Python

Skriptene som følger med demonstrerer hvordan du ser etter understrenger i Python ved å bruke to forskjellige metoder: nøkkelordet og metode. Det første skriptet definerer en funksjon, , som krever to argumenter: main_string og . Den kommer tilbake hvis eksisterer innenfor main_string og ellers. Dette oppnås ved hjelp av nøkkelord, som er en enkel og effektiv måte å utføre understrengkontroller i Python. Skriptet itererer deretter over en liste med strenger ved å bruke en løkke, og hvis substring ikke finnes i gjeldende streng, bruker den uttalelse for å hoppe til neste iterasjon.

Det andre skriptet bruker en lignende tilnærming, men utnytter metode i stedet. Funksjonen sjekker om er tilstede i main_string ved å returnere hvis metoden kommer ikke tilbake . De find metoden søker etter og returnerer den laveste indeksen der den er funnet, eller hvis den ikke blir funnet. Denne metoden gir mer kontroll hvis du trenger posisjonen til , men for en enkel sjekk in søkeordet er mer enkelt. Begge skriptene illustrerer hvordan du effektivt sjekker for understrenger og håndterer tilfeller der understrengen ikke blir funnet, noe som gir ren og lesbar Python-kode.

Hvordan se etter understrenger i Python

Python-skripteksempel som bruker "i" nøkkelord

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

Finne understrenger ved å bruke Pythons 'finn'-metode

Python-skripteksempel ved å bruke 'finn'-metoden

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

Utforske alternative strengmetoder i Python

I tillegg til det nøkkelordet og metode, tilbyr Python andre strengmetoder som kan være nyttige for å sjekke understrenger. En slik metode er , som returnerer antall ikke-overlappende forekomster av en delstreng i en streng. Selv om det ikke er en direkte erstatning for contains eller , kan den brukes til å bestemme om en delstreng eksisterer ved å sjekke om antallet er større enn null. En annen metode er , som sjekker om en streng starter med en spesifisert delstreng. Denne metoden er spesielt nyttig når du trenger å bekrefte prefikser i strenger, for eksempel å sjekke om en URL starter med 'http'.

På samme måte metoden sjekker om en streng slutter med en spesifisert delstreng. Dette er nyttig for å bekrefte filutvidelser eller andre suffikser. Python gir også modul for mer avanserte understrengsøk ved bruk av regulære uttrykk. De funksjonen tillater mønstertilpasning innenfor strenger, og gir en kraftig måte å finne komplekse delstrenger på. Selv om regulære uttrykk kan være mer komplekse å skrive og forstå, tilbyr de fleksibilitet og kraft for intrikate understrengsøk. Disse alternative metodene gir Python-programmerere en rekke verktøy for å håndtere understrengsjekker, imøtekomme ulike behov og brukstilfeller.

Vanlige spørsmål om delstrengmetoder i Python

  1. Hvordan kan jeg sjekke om en streng inneholder en understreng i Python?
  2. Du kan bruke nøkkelordet eller metode for å sjekke om en streng inneholder en understreng.
  3. Hva er forskjellen mellom og metoder?
  4. De metoden returnerer -1 hvis delstrengen ikke blir funnet, mens metoden gir en ValueError.
  5. Kan jeg bruke regulære uttrykk for understrengsjekker i Python?
  6. Ja, du kan bruke funksjon fra modul for avanserte understrengsøk.
  7. Hvordan sjekker jeg om en streng starter med en bestemt delstreng?
  8. Du kan bruke metode for å sjekke om en streng starter med en bestemt delstreng.
  9. Hvilken metode kan jeg bruke for å sjekke om en streng slutter med en bestemt delstreng?
  10. De metode kan brukes til å sjekke om en streng slutter med en bestemt delstreng.
  11. Finnes det en metode for å telle forekomster av en delstreng i en streng?
  12. Ja, det metoden returnerer antall ikke-overlappende forekomster av en delstreng i en streng.
  13. Hvordan kan jeg håndtere tilfeller der delstrengen ikke blir funnet?
  14. Du kan bruke en uttalelse med eller sjekk om returnerer -1 for å håndtere tilfeller der delstrengen ikke blir funnet.
  15. Er det ytelsesforskjeller mellom disse metodene?
  16. Ja, metoder som og er generelt raskere for enkle kontroller, mens regulære uttrykk kan være tregere, men kraftigere.

Siste tanker om delstrengmetoder i Python

Python har ikke en eller metode som noen andre språk. Det gir imidlertid forskjellige måter å se etter understrenger, for eksempel nøkkelord, den find metode og regulære uttrykk. Hver metode har sine fordeler, noe som gjør det viktig å velge den rette basert på dine spesifikke behov. Ved å mestre disse teknikkene kan du effektivt håndtere understrengsjekker og skrive ren, effektiv Python-kode.