Python String find() Metode med eksempler
Hvad er Python Streng find()?
Python Streng find() er en funktion tilgรฆngelig i Python bibliotek for at finde indekset for den fรธrste forekomst af en understreng fra den givne streng. Strengen find()-funktionen vil returnere -1 i stedet for at kaste en undtagelse, hvis den angivne understreng ikke er til stede i den givne streng.
Syntaks af Python string find()
Den grundlรฆggende syntaks af 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:
- understreng: Den understreng, du vil sรธge i den givne streng.
- starte: (valgfrit) Startvรฆrdien, hvorfra sรธgningen efter understreng begynder. Som standard er det 0.
- ende: (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 overfรธrt til Python find()-metoden er understreng, dvs. den streng, du vil sรธge efter, start og slut. Startvรฆrdien er 0 som standard, og slutvรฆrdien er lรฆngden af โโstrengen.
I dette eksempel vil vi bruge metoden find() i Python med standardvรฆrdier.
Find()-metoden vil sรธge efter understrengen og give 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 positionen for den fรธrste.
Eksempel:
mystring = "Meet Guru99 Tutorials Site.Bedste site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
Output:
The position of Tutorials is at: 12
Eksempel pรฅ find() ved brug af startargument
Du kan sรธge i understrengen i den givne streng og angive startpositionen, hvorfra sรธgningen begynder. Startparameteren kan bruges til det samme.
Eksemplet vil angive startpositionen som 15, og find() i Python metode vil begynde sรธgningen fra position 15. Her vil slutpositionen vรฆre lรฆngden af โโstrengen og vil sรธge til slutningen af โโstrengen fra 15 positioner og fremefter.
Eksempel:
mystring = "Meet Guru99 Tutorials Site.Bedste site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Output:
The position of Tutorials is at 48
Eksempel pรฅ find() ved brug af start- og slutargumenter
Ved at bruge start- og slutparameteren vil vi forsรธge at begrรฆnse sรธgningen i stedet for at sรธge i hele strengen.
Eksempel:
mystring = "Meet Guru99 Tutorials Site.Bedste site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Output:
The position of Tutorials is at 12
Eksempel pรฅ find() metode Til at finde positionen af โโen given understreng i en streng
Vi ved, at find() hjรฆlper os med at finde indekset for den fรธrste forekomst af understreng. Den 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 understreng, vi sรธger efter.
Eksempel:
mystring = "Meet Guru99 Tutorials Site.Bedste site for Python Tutorials!"
print("The position of Bedste site is at:", mystring.find("Bedste site", 5, 40))
print("The position of Guru99 is at:", mystring.find("Guru99", 20))
Output:
The position of Bedste site is at: 27 The position of Guru99 is at: -1
Python streng rfind()
Python funktion rfind() ligner find()-funktionen med den eneste forskel er, at rfind() giver det hรธjeste indeks for den angivne delstreng og find() giver det laveste, dvs. det allerfรธrste indeks. Bรฅde rfind() og find() vil returnere -1, hvis understrengen ikke er til stede.
I eksemplet nedenfor har vi en streng "Meet Guru99 Tutorials Site. Bedste site for Python Vejledninger!" og vil forsรธge at finde positionen af โโunderstrengen Tutorials ved hjรฆlp af find() og rfind(). Forekomsten af โโTutorials i strengen er to gange.
Her er et eksempel, hvor bรฅde find() og rfind() bruges.
mystring = "Meet Guru99 Tutorials Site.Bedste 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
Outputtet viser, at find() giver indekset for den allerfรธrste Tutorials-understreng, som det fรฅr, og rfind() giver det sidste indeks af understreng Tutorials.
Python string index()
Python string index() er en funktion, der giver dig positionen for understrengen, der er givet ligesom find(). Den eneste forskel mellem de to er, at index() vil give en undtagelse, hvis understrengen ikke er til stede i strengen, og find() vil returnere -1.
Her er et fungerende eksempel, der viser adfรฆrden af โโindex() og find().
mystring = "Meet Guru99 Tutorials Site.Bedste 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
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.Bedste 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
I ovenstรฅende eksempel forsรธger vi at finde positionen for understrengen "test". Understrengen er ikke til stede i den givne streng, og derfor ved hjรฆlp af find(), fรฅr vi positionen som -1, men for index() kaster den en fejl som vist ovenfor.
For at finde den samlede forekomst af en understreng
For at finde det samlede antal gange understrengen er opstรฅet i den givne streng vil vi gรธre brug af find()-funktionen i Python. Vil slรธjfe gennem strengen ved hjรฆlp af for-loop fra 0 til slutningen af โโstrengen. Vil gรธre brug af startIndex parameter for find().
Variabler startIndex og count vil blive initialiseret til 0. Inside for โloop vil kontrollere, om understrengen er til stede inde i strengen givet ved hjรฆlp af find() og startIndex som 0.
Vรฆrdien returneret fra find(), hvis ikke -1, opdaterer startindekset til indekset, hvor strengen findes, og รธger ogsรฅ tรฆllevรฆrdien.
Her er arbejdseksemplet:
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
Resumรฉ
- Python string find()-metoden hjรฆlper med at finde indekset for den fรธrste forekomst af understrengen i den givne streng. Det vil returnere -1, hvis understrengen ikke er til stede.
- Parametrene overfรธrt til Python find substring-metoden er understreng, dvs. den streng du vil sรธge efter, start og slut. Startvรฆrdien er 0 som standard, og slutvรฆrdien er lรฆngden af โโstrengen.
- Du kan sรธge i understrengen i den givne streng og angive startpositionen, hvorfra sรธgningen begynder. Startparameteren kan bruges til det samme.
- Ved at bruge start- og slutparameteren vil vi forsรธge at begrรฆnse sรธgningen i stedet for at sรธge i hele strengen.
- Python funktion rfind() ligner find()-funktionen med den eneste forskel er, at rfind() giver det hรธjeste indeks for den angivne delstreng og find() giver det laveste, dvs. det allerfรธrste indeks. Bรฅde rfind() og find() vil returnere -1, hvis understrengen ikke er til stede.
- Python string index() er endnu en funktion, der vil give dig positionen for understrengen, der er givet ligesom find(). Den eneste forskel mellem de to er, at index() vil give en undtagelse, hvis understrengen ikke er til stede i strengen, og find() vil returnere -1.
- Vi kan bruge find() til at finde antallet af den samlede forekomst af en understreng i en given streng.
" Lรฆr mere om Python String split()
