Pythoni stringi leidmise () meetod koos näidetega

Lang L: none (table-of-contents):

Anonim

Mis on Pythoni stringi leidmine ()?

Pythoni stringide leidmine () on Pythoni teegis saadaval olev funktsioon alamstringi esimese esinemise indeksi leidmiseks antud stringist. Funktsioon string find () tagastab erandi viskamise asemel -1, kui määratud alamstringi antud stringis pole.

Selles Pythoni string find () meetodi õpetuses saate teada:

  • Mis on Pythoni stringi leidmine ()?
  • Pythoni stringi leidmise süntaks ()
  • Näide find () meetodist vaikeväärtustega
  • Näide leiust () alguse argumendi abil
  • Näide otsimis- () algus- ja lõppargumentidest
  • Näide find () meetodist Stringi antud alamstringi positsiooni leidmiseks
  • Pythoni string rfind ()
  • Pythoni stringide register ()
  • Alamstringi kogu esinemise leidmiseks

Pythoni stringi leidmise süntaks ()

Funktsiooni Python find () põhisüntaks on järgmine:

string.find(substring,start,end)

Meetodi find () parameetrid

Siin on Pythoni funktsiooni String find () kolm parameetrit:
  • alamstring : alamstring, mida soovite antud stringist otsida.
  • start : (valikuline) Algusväärtus, kust alamstringi otsimine algab. Vaikimisi on see 0.
  • end : (valikuline) Lõppväärtus, kus alamstringi otsing lõpeb. Vaikimisi on väärtus stringi pikkus.

Näide find () meetodist vaikeväärtustega

Python find () meetodile edastatud parameetrid on alamstringid ehk string, mida soovite otsida, alustada ja lõpetada. Algväärtus on vaikimisi 0 ja lõpu väärtus on stringi pikkus.

Selles näites kasutame Pythonis vaikeväärtustega meetodit find ().

Meetod find () otsib alamstringi ja annab alamstringi kõige esimese esinemise positsiooni. Kui alamstring on antud stringis mitu korda olemas, tagastab see teile siiski esimese indeksi või positsiooni.

Näide:

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

Väljund:

The position of Tutorials is at: 12

Näide leiust () alguse argumendi abil

Võite otsida alamstringi antud stringis ja määrata algusasendi, kust otsing algab. Starti parameetrit saab kasutada sama jaoks.

Näites määratakse algpositsiooniks 15 ja Pythoni meetodi otsing () alustab otsimist positsioonist 15. Siin on lõpppositsioon stringi pikkus ja see otsib stringi lõpuni 15 positsioonilt edasi.

Näide:

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

Väljund:

The position of Tutorials is at 48

Näide otsimis- () algus- ja lõppargumentidest

Parameetri algus ja lõpp abil püüame kogu stringi otsimise asemel otsingut piirata.

Näide:

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

Väljund:

The position of Tutorials is at 12

Näide find () meetodist Stringi antud alamstringi positsiooni leidmiseks

Me teame, et leid () aitab meil leida alamstringi esimese esinemise indeksi. See tagastab -1, kui alamstringi antud stringis pole. Allpool toodud näide näitab indeksit, kui string on olemas, ja -1, kui me ei leia otsitavat alamstringi.

Näide:

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

Väljund:

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

Pythoni string rfind ()

Pythoni funktsioon rfind () sarnaneb funktsiooniga find (), ainus erinevus on see, et rfind () annab antud alamstringi jaoks kõrgeima indeksi ja find () annab madalaima, st kõige esimese indeksi. Mõlemad rfind () ja find () tagastavad -1, kui alamstringi pole.

Allpool toodud näites on meil string "Meet Guru99 õpetuste sait. Parim sait Pythoni õpetuste jaoks!" ja püüab leida alamstringide õpetuste positsiooni, kasutades find () ja rfind (). Õpetuste esinemine stringis on kaks korda.

Siin on näide, kus kasutatakse nii find () kui ka 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"))

Väljund:

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

Väljund näitab, et find () annab esimese saadud õpetuste alamstringi indeksi ja rfind () annab viimase alamstruktuuri õpetuste indeksi.

Pythoni stringide register ()

Pythoni stringide register () on funktsioon, mis annab teile alamstringi positsiooni nagu leidmine (). Ainus erinevus nende kahe vahel on see, et indeks () loob erandi, kui alamstringi stringis pole ja find () tagastab -1.

Siin on toimiv näide, mis näitab indeksi () ja leidmise () käitumist.

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

Väljund:

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

Saame sama positsiooni nii leidmise () kui ka indeksi () jaoks. Vaatame näidet, kui antud alamstringi stringis pole.

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

Väljund:

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

Ülalolevas näites püüame leida alamstringi "test" positsiooni. Alamstringi antud stringis ei esine ja seetõttu leiame find () abil positsiooni kui -1, kuid indeksi () korral viskab see vea, nagu ülalpool näidatud.

Alamstringi kogu esinemise leidmiseks

Antud stringis alamstringi esinemiste koguarvu leidmiseks kasutame Pythonis funktsiooni find (). Lingib stringi läbi, kasutades vahemikku 0 kuni stringi lõpuni. Kasutab find () jaoks parameetrit startIndex.

Muutujad startIndex ja count lähtestatakse väärtusele 0. Inside for -loop kontrollib, kas alamstring on stringi sees, kasutades find () ja startIndex kui 0.

Kui tulemus () pole -1, tagastab väärtus startIndexi indeksiks, kust string on leitud, ja suurendab ka loendusväärtust.

Siin on toimiv näide:

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 )

Väljund:

The total count of substring test is: 6

Kokkuvõte

  • Pythoni stringi leidmise () meetod aitab leida antud stringi alamstringi esimese esinemise indeksi. See tagastab -1, kui alamstringi pole.
  • Parameetrid, mis edastati Pythoni alamstringi leidmise meetodile, on alamstring ehk string, mida soovite otsida, alustada ja lõpetada. Algväärtus on vaikimisi 0 ja lõpu väärtus on stringi pikkus.
  • Võite otsida alamstringi antud stringis ja määrata algusasendi, kust otsing algab. Starti parameetrit saab kasutada sama jaoks.
  • Parameetri algus ja lõpp abil püüame kogu stringi otsimise asemel otsingut piirata.
  • Pythoni funktsioon rfind () sarnaneb funktsiooniga find (), ainus erinevus on see, et rfind () annab antud alamstringi jaoks kõrgeima indeksi ja find () annab madalaima, st kõige esimese indeksi. Mõlemad rfind () ja find () tagastavad -1, kui alamstringi pole.
  • Pythoni stringide register () on veel üks funktsioon, mis annab teile alamstringi positsiooni nagu leidmine (). Ainus erinevus nende kahe vahel on see, et indeks () loob erandi, kui alamstringi stringis pole ja find () tagastab -1.
  • Me võime kasutada leidu (), et leida alamstringi koguarvu arv antud stringis.