Python String find () metódus példákkal

Tartalomjegyzék:

Anonim

Mi a Python String find ()?

A Python String find () egy olyan funkció, amely a Python könyvtárban érhető el, hogy megtalálja az adott karakterláncból az első rész előfordulásának indexét. A string find () függvény -1-et ad vissza kivétel helyett, ha a megadott sztring nem szerepel az adott karakterláncban.

Ebben a Python string find () metódus oktatóanyagban megtudhatja:

  • Mi a Python String find ()?
  • A Python karakterlánc szintaxisa find ()
  • Példa a find () metódusra alapértelmezett értékekkel
  • Példa a find () -ra a start argumentummal
  • Példa a find () kezdő és befejező argumentumokkal
  • Példa a find () metódusra Egy adott alstring pozíciójának megkeresése egy karakterláncban
  • Python karakterlánc rfind ()
  • Python karakterlánc index ()
  • Hogy megtalálja az alszekvencia teljes előfordulását

A Python karakterlánc szintaxisa find ()

A Python find () függvény alapvető szintaxisa a következő:

string.find(substring,start,end)

A find () metódus paraméterei

Itt van a String find () függvény három paramétere a Pythonban:
  • szubsztring : Az a sztring, amelyet az adott karakterláncban keresni szeretne.
  • start : (opcionális) A kezdőérték, ahonnan az alszöveg keresése megkezdődik. Alapértelmezés szerint 0.
  • end : (opcionális) Az a végérték, ahol az alszöveg keresése véget ér. Alapértelmezés szerint az érték a karakterlánc hossza.

Példa a find () metódusra alapértelmezett értékekkel

A Python find () metódushoz továbbított paraméterek a szubsztringek, azaz a keresni, kezdeni és befejezni kívánt karakterlánc. A kezdő érték alapértelmezés szerint 0, a végérték pedig a karakterlánc hossza.

Ebben a példában a find () metódust fogjuk használni a Pythonban alapértelmezett értékekkel.

A find () metódus megkeresi az alszöveget, és megadja az alfej első előfordulásának helyzetét. Most, ha az allánc többször is szerepel az adott karakterláncban, akkor is az első indexét vagy pozícióját adja vissza.

Példa:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials"))

Kimenet:

The position of Tutorials is at: 12

Példa a find () -ra a start argumentummal

Az adott karakterláncban kereshet az alszövegben, és meghatározhatja a kezdő pozíciót, ahonnan a keresés megkezdődik. A start paraméter használható ugyanerre.

A példa a kezdőpozíciót 15-ként adja meg, a Python metódusban pedig a find () a keresést a 15. pozícióból kezdi. Itt a végpozíció a karakterlánc hossza lesz, és a karakterlánc végéig 15 pozícióból fog keresni tovább.

Példa:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 20))

Kimenet:

The position of Tutorials is at 48

Példa a find () kezdő és befejező argumentumokkal

A start és end paraméter használatával megpróbáljuk korlátozni a keresést, ahelyett, hogy a teljes karakterláncot keresnénk.

Példa:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))

Kimenet:

The position of Tutorials is at 12

Példa a find () metódusra Egy adott alstring pozíciójának megkeresése egy karakterláncban

Tudjuk, hogy a find () segít megtalálni a szubsztring első előfordulásának indexét. -1-et ad vissza, ha a sztring nem szerepel az adott karakterláncban. Az alábbi példa az indexet mutatja, amikor a karakterlánc jelen van, és -1, ha nem találjuk meg a keresett alszöveget.

Példa:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Best site is at:", mystring.find("Best site", 5, 40))print("The position of Guru99 is at:", mystring.find("Guru99", 20))

Kimenet:

The position of Best site is at: 27The position of Guru99 is at: -1

Python karakterlánc rfind ()

Az rfind () Python függvény hasonló a find () függvényhez, csak annyi különbséggel, hogy az rfind () adja meg a legmagasabb indexet az adott szubsztrátumhoz, a find () pedig a legalacsonyabb, azaz a legelső indexet adja. Az rfind () és a find () egyaránt -1-et ad vissza, ha az alsor nem szerepel.

Az alábbi példában van egy "Meet Guru99 oktatóanyagok webhelye. A legjobb webhely a Python oktatóanyagokhoz!" Karakterlánc. és megkísérli megtalálni az oktatóanyagok sztringelésének helyzetét a find () és az rfind () használatával. Az oktatóanyagok előfordulása a karaktersorozatban kétszerese.

Itt van egy példa, ahol mind a find (), mind az rfind () kifejezést használjuk.

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials using find() : ", mystring.find("Tutorials"))print("The position of Tutorials using rfind() : ", mystring.rfind("Tutorials"))

Kimenet:

The position of Tutorials using find() : 12The position of Tutorials using rfind() : 48

A kimenet azt mutatja, hogy a find () megadja a legelső kapott Tutorials szubstring indexét, az rfind () pedig az Substring Tutorials utolsó indexét.

Python karakterlánc index ()

A Python karakterlánc index () egy olyan függvény, amely megadja a szubsztring helyzetét, mint a find (). Az egyetlen különbség a kettő között az, hogy az index () kivételt vet, ha az alfej nem szerepel a karakterláncban, és a find () -1-et ad vissza.

Itt van egy működő példa, amely bemutatja az index () és a find () viselkedését.

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials using find() : ", mystring.find("Tutorials"))print("The position of Tutorials using index() : ", mystring.index("Tutorials"))

Kimenet:

The position of Tutorials using find() : 12The position of Tutorials using index() : 12

Ugyanazt a pozíciót kapjuk mind a find (), mind az index () esetében. Lássunk egy példát, amikor a megadott sztring nem szerepel a karakterláncban.

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials using find() : ", mystring.find("test"))print("The position of Tutorials using index() : ", mystring.index("test"))

Kimenet:

The position of Tutorials using find() : -1Traceback (most recent call last):File "task1.py", line 3, in print("The position of Tutorials using index() : ", mystring.index("test"))ValueError: substring not found

A fenti példában megpróbáljuk megtalálni a szubsztring "teszt" helyzetét. A sztring nem található az adott karakterláncban, ezért a find () használatával -1-et kapunk a pozícióból, de az index () esetében a fentiek szerint hibát dob.

Hogy megtalálja az alszekvencia teljes előfordulását

Ahhoz, hogy megtudjuk, hányszor jelent meg az alstring az adott karaktersorozatban, használjuk a find () függvényt a Pythonban. A 0-tól a karakterlánc végéig körbefut a húrban a for-loop segítségével. Használja a startIndex paramétert a find () használatához.

A startIndex és a count változók 0-ra inicializálódnak. A -loop belsejében ellenőrizni fogja, hogy az alstring szerepel-e a find () és a startIndex néven megadott stringben.

A find () -ból visszaadott érték, ha nem -1, frissíti a startIndex-et arra az indexre, ahol a karakterlánc található, és növeli a számlálás értékét is.

Íme a működő példa:

my_string = "test string test, test string testing, test string test string"startIndex = 0count = 0for i in range(len(my_string)):k = my_string.find('test', startIndex)if(k != -1):startIndex = k+1count += 1k = 0print("The total count of substring test is: ", count )

Kimenet:

The total count of substring test is: 6

Összegzés

  • A Python string find () metódus segít megtalálni az adott karakterláncban az alszöveg első előfordulásának indexét. -1-et ad vissza, ha az alszöveg nincs meg.
  • A Python find alstring módszernek átadott paraméterek a sztringek, azaz a karakterlánc, amelyet keresni, kezdeni és befejezni szeretne. A kezdő érték alapértelmezés szerint 0, a végérték pedig a karakterlánc hossza.
  • Az adott karakterláncban kereshet az alszövegben, és meghatározhatja a kezdő pozíciót, ahonnan a keresés megkezdődik. A start paraméter használható ugyanerre.
  • A start és end paraméter használatával megpróbáljuk korlátozni a keresést, ahelyett, hogy a teljes karakterláncot keresnénk.
  • Az rfind () Python függvény hasonló a find () függvényhez, csak annyi különbséggel, hogy az rfind () adja meg a legmagasabb indexet az adott szubsztrátumhoz, a find () pedig a legalacsonyabb, azaz a legelső indexet adja. Az rfind () és a find () egyaránt -1-et ad vissza, ha az alsor nem szerepel.
  • A Python karakterlánc index () még egy olyan függvény, amely megadja a szubsztring pozícióját, mint a find (). Az egyetlen különbség a kettő között az, hogy az index () kivételt vet, ha az alfej nem szerepel a karakterláncban, és a find () -1-et ad vissza.
  • Használhatjuk a find () -ot, hogy megtaláljuk egy sztringben az alstring teljes előfordulásának számát.