Python Metoda String find() cu exemple
Ce Este Python String find()?
Python String find() este o funcศie disponibilฤ รฎn Python bibliotecฤ pentru a gฤsi indexul primei apariศii a unui subศir din ศirul dat. Funcศia ศir find() va returna -1 รฎn loc sฤ arunce o excepศie, dacฤ subศirul specificat nu este prezent รฎn ศirul dat.
Sintaxa lui Python ศir gฤsi ()
Sintaxa de bazฤ a Python Funcศia find() este dupฤ cum urmeazฤ:
string.find(substring,start,end)
Parametrii pentru metoda find().
Iatฤ trei parametri ai funcศiei String find() รฎn Python:
- subcord: Subศirul pe care doriศi sฤ รฎl cฤutaศi รฎn ศirul dat.
- รncepe: (opศional) Valoarea de รฎnceput de unde va รฎncepe cฤutarea subศirului. รn mod implicit, este 0.
- capฤt: (opศional) Valoarea finalฤ la care se va termina cฤutarea subศirului. รn mod implicit, valoarea este lungimea ศirului.
Exemplu de metoda find() cu valori implicite
Parametrii trecuศi la Python metoda find() sunt subศiruri, adicฤ ศirul pe care doriศi sฤ รฎl cฤutaศi, sฤ รฎncepeศi ศi sฤ รฎl terminaศi. Valoarea de รฎnceput este 0 รฎn mod implicit, iar valoarea finalฤ este lungimea ศirului.
รn acest exemplu, vom folosi metoda find() รฎn Python cu valori implicite.
Metoda find() va cฤuta subศirul ศi va da poziศia primei apariศii a subศirului. Acum, dacฤ subศirul este prezent de mai multe ori รฎn ศirul dat, tot รฎศi va returna indexul sau poziศia primului.
Exemplu:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
ieศire:
The position of Tutorials is at: 12
Exemplu de find() folosind argumentul start
Puteศi cฤuta subศirul รฎn ศirul dat ศi specificaศi poziศia de รฎnceput, de unde va รฎncepe cฤutarea. Parametrul de pornire poate fi utilizat pentru acelaศi lucru.
Exemplul va specifica poziศia de รฎnceput ca 15 ศi find() รฎn Python metoda va รฎncepe cฤutarea de la poziศia 15. Aici, poziศia finalฤ va fi lungimea ศirului ศi va cฤuta pรขnฤ la sfรขrศitul ศirului de la 15 poziศii รฎncolo.
Exemplu:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
ieศire:
The position of Tutorials is at 48
Exemplu de find() folosind argumentele start ศi end
Folosind parametrul start ศi end, vom รฎncerca sฤ limitฤm cฤutarea, รฎn loc sฤ cฤutฤm รฎntregul ศir.
Exemplu:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
ieศire:
The position of Tutorials is at 12
Exemplu de metodฤ find() Pentru a gฤsi poziศia unui subศir dat รฎntr-un ศir
ศtim cฤ find() ne ajutฤ sฤ gฤsim indexul primei apariศii a subศirului. Returneazฤ -1 dacฤ subศirul nu este prezent รฎn ศirul dat. Exemplul de mai jos aratฤ indexul cรขnd ศirul este prezent ศi -1 cรขnd nu gฤsim subศirul pe care รฎl cฤutฤm.
Exemplu:
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))
ieศire:
The position of Best site is at: 27 The position of Guru99 is at: -1
Python ศir rfind()
Python funcศia rfind() este similarฤ cu funcศia find(), singura diferenศฤ este cฤ rfind() oferฤ cel mai mare indice pentru subศirul dat ศi find() oferฤ cel mai mic, adicฤ primul indice. Atรขt rfind() cรขt ศi find() vor returna -1 dacฤ subศirul nu este prezent.
รn exemplul de mai jos, avem un ศir de caractere โMeet GuruSite cu 99 de tutoriale. Cel mai bun site pentru Python Tutoriale!โ ศi va รฎncerca sฤ gฤseascฤ poziศia subศirului de tutoriale folosind find() ศi rfind(). Apariศia Tutorialelor รฎn ศir este de douฤ ori.
Iatฤ un exemplu รฎn care sunt folosite atรขt find() cรขt ศi rfind().
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"))
ieศire:
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
Rezultatul aratฤ cฤ find() oferฤ indexul primului subศir de tutoriale pe care รฎl primeศte, iar rfind() oferฤ ultimul index al subศirului de tutoriale.
Python index de ศir ()
Python string index() este o funcศie care vฤ va oferi poziศia subศirului dat la fel ca find(). Singura diferenศฤ dintre cele douฤ este cฤ index() va arunca o excepศie dacฤ subศirul nu este prezent รฎn ศir ศi find() va returna -1.
Iatฤ un exemplu de lucru care aratฤ comportamentul index() ศi 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"))
ieศire:
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
Obศinem aceeaศi poziศie atรขt pentru find() cรขt ศi pentru index(). Sฤ vedem un exemplu cรขnd subศirul dat nu este prezent รฎn ศir.
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"))
ieศire:
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
รn exemplul de mai sus, รฎncercฤm sฤ gฤsim poziศia subศirului โtestโ. Subศirul nu este prezent รฎn ศirul dat ศi, prin urmare, folosind find(), obศinem poziศia ca -1, dar pentru index(), aruncฤ o eroare aศa cum se aratฤ mai sus.
Pentru a gฤsi apariศia totalฤ a unui subศir
Pentru a gฤsi numฤrul total de ori a apฤrut subศirul รฎn ศirul dat, vom folosi funcศia find() din Python. Va trece prin ศir folosind for-loop de la 0 pรขnฤ la sfรขrศitul ศirului. Va folosi parametrul startIndex pentru find().
Variabilele startIndex ศi count vor fi iniศializate la 0. Inside for โloop va verifica dacฤ subศirul este prezent รฎn ศirul dat folosind find() ศi startIndex ca 0.
Valoarea returnatฤ de la find() dacฤ nu -1, va actualiza startIndex la indexul รฎn care este gฤsit ศirul ศi, de asemenea, va incrementa valoarea numฤrului.
Iatฤ exemplul de lucru:
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 )
ieศire:
The total count of substring test is: 6
Rezumat
- Python Metoda string find() ajutฤ la gฤsirea indexului primei apariศii a subศirului din ศirul dat. Va returna -1 dacฤ subศirul nu este prezent.
- Parametrii trecuศi la Python metoda find substring sunt subศir, adicฤ ศirul pe care doriศi sฤ รฎl cฤutaศi, sฤ รฎncepeศi ศi sฤ-l terminaศi. Valoarea de รฎnceput este 0 รฎn mod implicit, iar valoarea finalฤ este lungimea ศirului.
- Puteศi cฤuta subศirul รฎn ศirul dat ศi specificaศi poziศia de รฎnceput, de unde va รฎncepe cฤutarea. Parametrul de pornire poate fi utilizat pentru acelaศi lucru.
- Folosind parametrul start ศi end, vom รฎncerca sฤ limitฤm cฤutarea, รฎn loc sฤ cฤutฤm รฎntregul ศir.
- Python funcลฃie rfind() este similar cu funcศia find() cu singura diferenศฤ este cฤ rfind() oferฤ cel mai mare indice pentru subศirul dat ศi find() oferฤ cel mai mic, adicฤ primul indice. Atรขt rfind() cรขt ศi find() vor returna -1 dacฤ subศirul nu este prezent.
- Python string index() este รฎncฤ o altฤ funcศie care vฤ va oferi poziศia subศirului dat la fel ca find(). Singura diferenศฤ dintre cele douฤ este cฤ index() va arunca o excepศie dacฤ subศirul nu este prezent รฎn ศir ศi find() va returna -1.
- Putem folosi find() pentru a gฤsi numฤrul apariศiei totale a unui subศir รฎntr-un ศir dat.
" Aflฤ mai multe despre Python รmpฤrศire ศiruri ()
