Python String find () methode met voorbeelden

Inhoudsopgave:

Anonim

Wat is Python String find ()?

Python String find () is een functie die beschikbaar is in de Python-bibliotheek om de index te vinden van het eerste voorkomen van een substring uit de opgegeven string. De string find () functie retourneert -1 in plaats van een uitzondering te genereren, als de opgegeven substring niet aanwezig is in de opgegeven string.

In deze Python string find () method tutorial leer je:

  • Wat is Python String find ()?
  • Syntaxis van Python-string find ()
  • Voorbeeld van methode find () met standaardwaarden
  • Voorbeeld van find () met startargument
  • Voorbeeld van find () met begin- en eindargumenten
  • Voorbeeld van methode find () Om de positie van een gegeven subtekenreeks in een tekenreeks te vinden
  • Python-tekenreeks rfind ()
  • Python-tekenreeksindex ()
  • Om het totale voorkomen van een subtekenreeks te vinden

Syntaxis van Python-string find ()

De basissyntaxis van de functie find () van Python is als volgt:

string.find(substring,start,end)

Parameters voor de methode find ()

Hier zijn drie parameters van de functie String find () in Python:
  • substring : de substring die u wilt zoeken in de opgegeven string.
  • start : (optioneel) De startwaarde van waaruit het zoeken naar subtekenreeks zal beginnen. Standaard is dit 0.
  • end : (optioneel) De eindwaarde waar het zoeken naar subtekenreeks zal eindigen. Standaard is de waarde de lengte van de tekenreeks.

Voorbeeld van methode find () met standaardwaarden

De parameters die aan de methode find () van Python worden doorgegeven, zijn substring, dwz de tekenreeks waarnaar u wilt zoeken, start en einde. De beginwaarde is standaard 0 en de eindwaarde is de lengte van de tekenreeks.

In dit voorbeeld gebruiken we de methode find () in Python met standaardwaarden.

De methode find () zoekt naar de subtekenreeks en geeft de positie van de allereerste keer dat de subtekenreeks voorkomt. Als de subtekenreeks nu meerdere keren in de opgegeven reeks voorkomt, wordt u nog steeds de index of positie van de eerste geretourneerd.

Voorbeeld:

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

Uitgang:

The position of Tutorials is at: 12

Voorbeeld van find () met startargument

U kunt de subtekenreeks in de opgegeven tekenreeks doorzoeken en de startpositie specificeren, van waaruit het zoeken zal beginnen. De startparameter kan hiervoor worden gebruikt.

Het voorbeeld specificeert de startpositie als 15, en de find () in Python-methode zal het zoeken beginnen vanaf positie 15. Hier is de eindpositie de lengte van de string en zal zoeken tot het einde van de string vanaf 15 posities verder.

Voorbeeld:

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

Uitgang:

The position of Tutorials is at 48

Voorbeeld van find () met begin- en eindargumenten

Met behulp van de begin- en eindparameter zullen we proberen de zoekopdracht te beperken, in plaats van de hele reeks te doorzoeken.

Voorbeeld:

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

Uitgang:

The position of Tutorials is at 12

Voorbeeld van methode find () Om de positie van een gegeven subtekenreeks in een tekenreeks te vinden

We weten dat find () ons helpt om de index te vinden van de eerste keer dat een subtekenreeks voorkomt. Het retourneert -1 als de subtekenreeks niet aanwezig is in de opgegeven tekenreeks. Het onderstaande voorbeeld toont de index als de string aanwezig is en -1 als we de substring waarnaar we zoeken niet vinden.

Voorbeeld:

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))

Uitgang:

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

Python-tekenreeks rfind ()

De Python-functie rfind () is vergelijkbaar met de functie find () met het enige verschil dat rfind () de hoogste index geeft voor de gegeven substring en find () de laagste, dwz de allereerste index. Zowel rfind () als find () retourneren -1 als de subtekenreeks niet aanwezig is.

In het onderstaande voorbeeld hebben we een string "Meet Guru99 Tutorials Site. Beste site voor Python Tutorials!" en zal proberen de positie van de deelstring Tutorials te vinden met behulp van find () en rfind (). Het voorkomen van Tutorials in de string is twee keer.

Hier is een voorbeeld waarin zowel find () als rfind () worden gebruikt.

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

Uitgang:

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

De uitvoer laat zien dat find () de index geeft van de allereerste Tutorials-substring die het krijgt, en rfind () geeft de laatste index van substring Tutorials.

Python-tekenreeksindex ()

De Python string index () is een functie die je de positie van de gegeven substring geeft, net als find (). Het enige verschil tussen de twee is dat index () een uitzondering genereert als de substring niet aanwezig is in de string en find () retourneert -1.

Hier is een werkend voorbeeld dat het gedrag van index () en find () laat zien.

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

Uitgang:

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

We krijgen dezelfde positie voor zowel find () als index (). Laten we een voorbeeld bekijken wanneer de gegeven substring niet aanwezig is in de string.

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

Uitgang:

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

In het bovenstaande voorbeeld proberen we de positie van de substring "test" te vinden. De substring is niet aanwezig in de gegeven string, en daarom krijgen we met find () de positie als -1, maar voor index () genereert het een fout zoals hierboven weergegeven.

Om het totale voorkomen van een subtekenreeks te vinden

Om het totale aantal keren te vinden dat de substring in de gegeven string is opgetreden, gebruiken we de functie find () in Python. Loopt door de string met for-loop van 0 tot het einde van de string. Zal gebruik maken van de startIndex parameter voor find ().

Variabelen startIndex en count worden geïnitialiseerd op 0. Inside for -loop zal controleren of de substring aanwezig is in de string die is opgegeven met find () en startIndex als 0.

De waarde die wordt geretourneerd door find (), indien niet -1, zal de startIndex bijwerken naar de index waar de tekenreeks is gevonden en ook de telwaarde verhogen.

Hier is het werkende voorbeeld:

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 )

Uitgang:

The total count of substring test is: 6

Overzicht

  • De Python string find () methode helpt bij het vinden van de index van het eerste voorkomen van de substring in de gegeven string. Het zal -1 retourneren als de subtekenreeks niet aanwezig is.
  • De parameters die aan de zoek-substringmethode van Python worden doorgegeven, zijn substring, dwz de string waarnaar u wilt zoeken, start en end. De beginwaarde is standaard 0 en de eindwaarde is de lengte van de tekenreeks.
  • U kunt de subtekenreeks in de opgegeven tekenreeks doorzoeken en de startpositie specificeren, van waaruit het zoeken zal beginnen. De startparameter kan hiervoor worden gebruikt.
  • Met behulp van de begin- en eindparameter zullen we proberen de zoekopdracht te beperken, in plaats van de hele reeks te doorzoeken.
  • De Python-functie rfind () is vergelijkbaar met de functie find () met het enige verschil dat rfind () de hoogste index geeft voor de gegeven substring en find () de laagste, dwz de allereerste index. Zowel rfind () als find () retourneren -1 als de subtekenreeks niet aanwezig is.
  • De Python-stringindex () is nog een andere functie die je de positie van de gegeven substring geeft, net als find (). Het enige verschil tussen de twee is dat index () een uitzondering genereert als de substring niet aanwezig is in de string en find () retourneert -1.
  • We kunnen gebruik maken van find () om het aantal keren dat een subtekenreeks in een bepaalde string voorkomt te tellen.