Hvad er Python String find ()?
Python String find () er en funktion tilgængelig i Python-biblioteket for at finde indekset for den første forekomst af en substring fra den givne streng. Funktionen streng find () returnerer -1 i stedet for at kaste en undtagelse, hvis den angivne understreng ikke er til stede i den givne streng.
I denne Python-streng find () metode tutorial, lærer du:
- Hvad er Python String find ()?
- Syntaks for Python-streng find ()
- Eksempel på find () -metode med standardværdier
- Eksempel på find () ved hjælp af startargument
- Eksempel på find () ved hjælp af start- og slutargumenter
- Eksempel på find () -metode For at finde placeringen af en given substring i en streng
- Python-streng rfind ()
- Python strengindeks ()
- For at finde den samlede forekomst af en substring
Syntaks for Python-streng find ()
Den grundlæggende syntaks for Python find () -funktionen er som følger:
string.find(substring,start,end)
Parametre for find () -metoden
Her er tre parametre for funktionen String find () i Python:- substring : Det substring, du vil søge i den givne streng.
- start : (valgfrit) Startværdien, hvorfra søgningen efter substring begynder. Som standard er det 0.
- slut : (valgfrit) Slutværdien, hvor søgningen efter understreng slutter. Som standard er værdien længden af strengen.
Eksempel på find () -metode med standardværdier
Parametrene, der sendes til Python find () -metoden, er understrengende, dvs. den streng, du vil søge efter, starte og slutte. Startværdien er 0 som standard, og slutværdien er længden af strengen.
I dette eksempel bruger vi metoden find () i Python med standardværdier.
Metoden find () søger efter understrengen og giver positionen for den allerførste forekomst af understrengen. Nu, hvis understrengen er til stede flere gange i den givne streng, vil den stadig returnere dig indekset eller placeringen af den første.
Eksempel:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials"))
Produktion:
The position of Tutorials is at: 12
Eksempel på find () ved hjælp af startargument
Du kan søge i strengen i den givne streng og angive startpositionen, hvorfra søgningen begynder. Startparameteren kan bruges til det samme.
Eksemplet angiver startpositionen som 15, og find () i Python-metoden begynder søgningen fra position 15. Her vil slutpositionen være længden af strengen og søge til slutningen af strengen fra 15 positioner fremad.
Eksempel:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Produktion:
The position of Tutorials is at 48
Eksempel på find () ved hjælp af start- og slutargumenter
Ved hjælp af start- og slutparameteren forsøger vi at begrænse søgningen i stedet for at søge i hele strengen.
Eksempel:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Produktion:
The position of Tutorials is at 12
Eksempel på find () -metode For at finde placeringen af en given substring i en streng
Vi ved, at find () hjælper os med at finde indekset for den første forekomst af substring. Det returnerer -1, hvis understrengen ikke er til stede i den givne streng. Eksemplet nedenfor viser indekset, når strengen er til stede, og -1 når vi ikke finder den substring, vi søger efter.
Eksempel:
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))
Produktion:
The position of Best site is at: 27The position of Guru99 is at: -1
Python-streng rfind ()
Python-funktionen rfind () svarer til find () -funktionen med den eneste forskel er, at rfind () giver det højeste indeks for den givne understreng, og find () giver det laveste, dvs. det allerførste indeks. Både rfind () og find () returnerer -1, hvis understrengen ikke er til stede.
I eksemplet nedenfor har vi en streng "Meet Guru99 Tutorials Site. Bedste site til Python Tutorials!" og vil forsøge at finde placeringen af substring Tutorials ved hjælp af find () og rfind (). Forekomsten af selvstudier i strengen er to gange.
Her er et eksempel, hvor både find () og rfind () bruges.
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"))
Produktion:
The position of Tutorials using find() : 12The position of Tutorials using rfind() : 48
Outputtet viser, at find () giver indekset for den allerførste tutorials-substring, som den får, og rfind () giver det sidste index af substring-tutorials.
Python strengindeks ()
Python-strengindekset () er en funktion, der giver dig placeringen af understrengen, ligesom find (). Den eneste forskel mellem de to er, at index () kaster en undtagelse, hvis substringen ikke er til stede i strengen, og find () returnerer -1.
Her er et arbejdseksempel, der viser adfærd for indeks () og find ().
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"))
Produktion:
The position of Tutorials using find() : 12The position of Tutorials using index() : 12
Vi får samme position for både find () og index (). Lad os se et eksempel, når den angivne understreng ikke er til stede i strengen.
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"))
Produktion:
The position of Tutorials using find() : -1Traceback (most recent call last):File "task1.py", line 3, inprint("The position of Tutorials using index() : ", mystring.index("test"))ValueError: substring not found
I ovenstående eksempel forsøger vi at finde placeringen af substring "test". Understrengen er ikke til stede i den givne streng, og derfor bruger vi find (), vi får positionen som -1, men for indeks () kaster den en fejl som vist ovenfor.
For at finde den samlede forekomst af en substring
For at finde det samlede antal gange understrenget har fundet sted i den givne streng, bruger vi find () -funktionen i Python. Løber gennem strengen ved hjælp af for-loop fra 0 til slutningen af strengen. Bruger startIndex parameter til find ().
Variabler startIndex og optælling initialiseres til 0. Inside for -loop kontrollerer om substringen er til stede inde i strengen givet ved hjælp af find () og startIndex som 0.
Den værdi, der returneres fra find (), hvis ikke -1, opdaterer startIndex til det indeks, hvor strengen findes, og øger også tællingsværdien.
Her er arbejdseksemplet:
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 )
Produktion:
The total count of substring test is: 6
Resumé
- Python string find () -metoden hjælper med at finde indekset for den første forekomst af substring i den givne streng. Det returnerer -1, hvis understrengen ikke er til stede.
- Parametrene, der sendes til Python find substring-metoden, er substring, dvs. den streng, du vil søge efter, starte og slutte. Startværdien er 0 som standard, og slutværdien er længden af strengen.
- Du kan søge i strengen i den givne streng og angive startpositionen, hvorfra søgningen begynder. Startparameteren kan bruges til det samme.
- Ved hjælp af start- og slutparameteren forsøger vi at begrænse søgningen i stedet for at søge i hele strengen.
- Python-funktionen rfind () svarer til find () -funktionen med den eneste forskel er, at rfind () giver det højeste indeks for den givne understreng, og find () giver det laveste, dvs. det allerførste indeks. Både rfind () og find () returnerer -1, hvis understrengen ikke er til stede.
- Python-strengindekset () er endnu en funktion, der giver dig substringens position, ligesom find (). Den eneste forskel mellem de to er, at index () kaster en undtagelse, hvis substringen ikke er til stede i strengen, og find () returnerer -1.
- Vi kan bruge find () til at finde antallet af den samlede forekomst af en substring i en given streng.