Python String find() metódus példákkal
⚡ Okos összefoglaló
Python A string find() egy beépített metódus, amely visszaadja egy alkarakterlánc első előfordulásának indexét egy karakterláncon belül. -1 értéket ad vissza, ha az alkarakterlánc nincs jelen, elkerülve a kivételeket.

Mi a Python String find()?
Python String find() egy olyan függvény, amely elérhető a Python könyvtárat, hogy megtalálja egy adott karakterláncon belüli részkarakterlánc első előfordulásának indexét. A find() függvény -1 értéket ad vissza kivétel dobása helyett, ha a megadott részkarakterlánc nem szerepel az adott karakterláncban. Ez az egyik a következők közül: Pythonleggyakrabban használt karakterlánc módszerek szöveg helyének meghatározásához.
szintaxisa Python string find()
Az alapvető szintaxis a Python find() függvény a következő:
string.find(substring,start,end)
A find() metódus paraméterei
Íme a find() függvény három paramétere a következőben: Python:
- szubsztring: Az adott karakterláncban keresendő alkarakterlánc.
- kezdet: (opcionális) A kezdőérték, ahonnan a részkarakterlánc keresése indul. Alapértelmezés szerint 0.
- végén: (opcionális) A végérték, ahol a részkarakterlánc 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 paraméterek átadásra kerültek a Python A find() metódus paraméterei a keresendő karakterlánc, azaz az alkarakterlánc, valamint a kezdete és a vége. 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 Python alapértelmezett értékekkel.
A find() metódus megkeresi a karakterláncot, és megadja az első előfordulásának pozícióját. Ha a karakterlánc többször is előfordul az adott karakterláncban, akkor is az első előfordulásának 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"))
output:
The position of Tutorials is at: 12
Példa a find()-ra a start argumentum használatával
Megkeresheti a megadott karakterláncban lévő alkarakterláncot, és megadhatja a keresés kezdőpozícióját. Erre a célra a start paraméter használható.
Az alábbi példa a kezdőpozíciót 20-ként, a find() metódust pedig a következőben adja meg: Python a 20. pozíciótól kezdi a keresést. Itt a végpozíció a karakterlánc hossza lesz, tehát a 20. pozíciótól kezdve a karakterlánc végéig keres.
Példa:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
output:
The position of Tutorials is at 48
Példa a find()-ra start és end argumentumokat használva
A start és end paraméterek használatával szűkíthetjük a keresést a teljes karakterlánc keresése helyett.
Példa:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
output:
The position of Tutorials is at 12
Példa a find() metódusra egy adott alkarakterlánc pozíciójának megkereséséhez egy karakterláncban
Tudjuk, hogy a find() függvény segít megtalálni egy alkarakterlánc első előfordulásának indexét. -1 értéket ad vissza, ha az alkarakterlánc nem szerepel az adott karakterláncban. Az alábbi példa az indexet mutatja, amikor a karakterlánc jelen van, és a -1 értéket, amikor a keresett alkarakterlánc nem található.
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))
output:
The position of Best site is at: 27 The position of Guru99 is at: -1
Python string rfind()
Az Python Az rfind() függvény hasonló a find() függvényhez, azzal a különbséggel, hogy az rfind() az adott részkarakterlánc legmagasabb indexét adja vissza, míg a find() a legalacsonyabbat, azaz a legelső indexet. Mind az rfind(), mind a find() -1 értéket ad vissza, ha a részkarakterlánc nincs jelen.
Az alábbi példában a „Találkozz” karakterlánc szerepel. Guru99 oktatóanyag oldal. A legjobb oldal ehhez: Python oktatóanyagok!” karakterláncot, és megpróbálja megtalálni a „Tutorials” alkarakterlánc pozícióját a find() és az rfind() függvények segítségével. A „Tutorials” alkarakterlánc kétszer fordul elő a karakterláncban.
Itt van egy példa, ahol a find() és az rfind() is használatos.
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"))
output:
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
A kimenet azt mutatja, hogy a find() függvény a megtalált Tutorials legelső alkarakterláncának indexét adja vissza, míg az rfind() függvény a Tutorials alkarakterlánc utolsó indexét adja vissza.
Python string index()
Az Python A string index() egy olyan függvény, amely a find()-hez hasonlóan visszaadja az adott részkarakterlánc pozícióját. Az egyetlen különbség a kettő között az, hogy az index() kivételt dob, ha a részkarakterlánc nincs jelen a karakterláncban, míg a find() -1 értéket ad vissza.
Itt van egy működő példa, amely bemutatja az index() és 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"))
output:
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
Ugyanazt a pozíciót kapjuk mind a find(), mind az index() függvények esetében. Nézzünk egy példát arra, amikor a megadott alkarakterlánc nincs jelen 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"))
output:
The position of Tutorials using find() : -1
Traceback (most recent call last):
File "task1.py", line 3, in <module>
print("The position of Tutorials using index() : ", mystring.index("test"))
ValueError: substring not found
A fenti példában a „test” alkarakterlánc pozícióját próbáljuk megkeresni. Az alkarakterlánc nincs jelen a megadott karakterláncban, így a find() használatával a pozíció -1-ként jelenik meg, de az index() hibát dob, ahogy fentebb látható.
Egy részkarakterlánc teljes előfordulásának megállapítása
Annak megkereséséhez, hogy egy alkarakterlánc hányszor fordult elő az adott karakterláncban, a find() függvényt fogjuk használni. PythonEgy for ciklus segítségével fogjuk végigjárni a karakterláncot 0-tól a karakterlánc végéig, a find() startIndex paraméterét használva.
A startIndex és count változók 0-ra lesznek inicializálva. A for cikluson belül a find() függvénnyel ellenőrizzük, hogy a megadott karakterláncban szerepel-e a kívánt alkarakterlánc, és a startIndex értéke 0 lesz.
A find() által visszaadott érték, ha nem -1, frissíti a startIndex értékét arra az indexre, ahol a karakterlánc található, és növeli a számláló értékét is.
Íme a működő példa:
my_string = "test string test, test string testing, test string test string"
startIndex = 0
count = 0
for i in range(len(my_string)):
k = my_string.find('test', startIndex)
if(k != -1):
startIndex = k+1
count += 1
k = 0
print("The total count of substring test is: ", count )
output:
The total count of substring test is: 6
" Tudj meg többet Python String split()
