Python String find () -menetelmä esimerkkien kanssa

Sisällysluettelo:

Anonim

Mikä on Python String find ()?

Python String find () on toiminto, joka on käytettävissä Python-kirjastossa etsimään hakemisto alimerkkijonon ensimmäisestä esiintymisestä annetusta merkkijonosta. Merkkijono find () -funktio palauttaa -1 poikkeuksen heittämisen sijaan, jos määritettyä alimerkkijonoa ei ole annetussa merkkijonossa.

Tässä Python-merkkijonon etsi () -metodioppaassa opit:

  • Mikä on Python String find ()?
  • Python-merkkijonon syntaksi etsi ()
  • Esimerkki find () -metodista oletusarvoilla
  • Esimerkki löydöksestä () käyttämällä aloitusargumenttia
  • Esimerkki find (): sta käyttäen alku- ja loppuargumentteja
  • Esimerkki find () -menetelmästä Löydät tietyn merkkijonon sijainnin merkkijonosta
  • Python-merkkijono rfind ()
  • Python-merkkijonohakemisto ()
  • Voit löytää alimerkkijonon kokonaismäärän

Python-merkkijonon syntaksi etsi ()

Python find () -funktion perussyntaksi on seuraava:

string.find(substring,start,end)

Find () -menetelmän parametrit

Tässä on kolme parametria funktiosta String find () Pythonissa:
  • alimerkkijono : Alimerkkijono, jonka haluat etsiä annetusta merkkijonosta.
  • start : (valinnainen) Aloitusarvo, josta alimerkkihaku alkaa. Oletuksena se on 0.
  • end : (valinnainen) Loppuarvo, johon alimerkkihaku loppuu. Oletuksena arvo on merkkijonon pituus.

Esimerkki find () -metodista oletusarvoilla

Python find () -menetelmälle välitetyt parametrit ovat merkkijonoa eli merkkijonoa, jota haluat etsiä, aloittaa ja lopettaa. Aloitusarvo on oletusarvoisesti 0, ja loppuarvo on merkkijonon pituus.

Tässä esimerkissä käytetään menetelmää find () Pythonissa oletusarvoilla.

Find () -menetelmä etsii alimerkkijonoa ja antaa paikan alimerkkijonon ensimmäisestä esiintymisestä. Jos alaosaa on useita kertoja annetussa merkkijonossa, silti se palauttaa sinulle ensimmäisen hakemiston tai sijainnin.

Esimerkki:

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

Tuotos:

The position of Tutorials is at: 12

Esimerkki löydöksestä () käyttämällä aloitusargumenttia

Voit etsiä alaosaa annetusta merkkijonosta ja määrittää aloituspaikan, josta haku alkaa. Käynnistysparametriä voidaan käyttää samaan.

Esimerkissä määritetään alkuasemaksi 15, ja etsi () Python-menetelmässä aloittaa haun paikasta 15. Tässä loppuasento on merkkijonon pituus ja etsii merkkijonon loppuun 15 sijainnista. eteenpäin.

Esimerkki:

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

Tuotos:

The position of Tutorials is at 48

Esimerkki find (): sta käyttäen alku- ja loppuargumentteja

Aloitus- ja lopetusparametrien avulla yritämme rajoittaa hakua sen sijaan, että etsimme koko merkkijonoa.

Esimerkki:

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

Tuotos:

The position of Tutorials is at 12

Esimerkki find () -menetelmästä Löydät tietyn merkkijonon sijainnin merkkijonosta

Tiedämme, että find () auttaa meitä etsimään alimerkkijonon ensimmäisen esiintymisen indeksin. Se palauttaa -1, jos alaosaa ei ole annetussa merkkijonossa. Alla oleva esimerkki näyttää hakemiston, kun merkkijono on läsnä, ja -1, kun emme löydä etsimääsi alimerkkijonoa.

Esimerkki:

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

Tuotos:

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

Python-merkkijono rfind ()

Python-funktio rfind () on samanlainen kuin find () -funktio, sillä ainoa ero on, että rfind () antaa korkeimman indeksin annetulle alaosalle ja find () antaa pienimmän eli ensimmäisen indeksin. Sekä rfind () että find () palauttavat -1, jos alimerkkijonoa ei ole.

Alla olevassa esimerkissä meillä on merkkijono "Meet Guru99 Tutorials Site. Best site for Python Tutorials!" ja yrittää löytää aliopetusoppaiden sijainnin find () ja rfind () avulla. Opetusohjelmien esiintyminen merkkijonossa on kaksi kertaa.

Tässä on esimerkki, jossa käytetään sekä find (): ta että 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"))

Tuotos:

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

Tulos osoittaa, että find () antaa ensimmäisen saamansa opetusohjelmien alimerkinnän hakemiston ja rfind () antaa viimeisen hakemiston opetusohjelmien hakemiston.

Python-merkkijonohakemisto ()

Python-merkkijonohakemisto () on funktio, joka antaa sinulle alaotsikon sijainnin aivan kuten find (). Ainoa ero näiden kahden välillä on, että index () heittää poikkeuksen, jos alimerkkijonoa ei ole merkkijonossa ja find () palauttaa -1.

Tässä on toimiva esimerkki, joka näyttää indeksin () ja löydön () käyttäytymisen.

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

Tuotos:

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

Saamme saman sijainnin sekä löydökselle () että hakemistolle (). Katsotaanpa esimerkki, kun annettua alaosaa ei ole merkkijonossa.

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

Tuotos:

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

Yllä olevassa esimerkissä yritämme löytää alimerkkijonon "testi" sijainnin. Alamerkkijonoa ei ole annetussa merkkijonossa, ja siksi käyttämällä find () -toimintoa saamme paikan -1, mutta indeksille () se heittää virheen, kuten yllä on esitetty.

Voit löytää alimerkkijonon kokonaismäärän

Löydämme alamerkkijonon esiintymismäärän annetussa merkkijonossa hyödyntämällä find () -funktiota Pythonissa. Silmukkaa merkkijonon läpi for-loopilla 0: sta merkkijonon loppuun. Käyttää startIndex-parametria etsiessä ().

Muuttujat startIndex ja count alustetaan arvoon 0. Inside for -loop tarkistaa, onko alimerkkijonoa merkkijonon sisällä, joka on annettu find (): lla ja startIndex: llä arvona 0.

Löydetty arvo find (), ellei -1, päivittää startIndex-indeksin hakemistoon, josta merkkijono löytyy, ja lisää myös laskenta-arvoa.

Tässä on toimiva esimerkki:

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 )

Tuotos:

The total count of substring test is: 6

Yhteenveto

  • Python-merkkijono find () -menetelmä auttaa löytämään hakemiston alimerkkijonon ensimmäisestä esiintymisestä annetussa merkkijonossa. Se palauttaa -1, jos alaosaa ei ole läsnä.
  • Pythonin haku -alimekanismimenetelmälle välitetyt parametrit ovat merkkijonoa eli merkkijonoa, jota haluat etsiä, aloittaa ja lopettaa. Aloitusarvo on oletusarvoisesti 0, ja loppuarvo on merkkijonon pituus.
  • Voit etsiä alaosaa annetusta merkkijonosta ja määrittää aloituspaikan, josta haku alkaa. Käynnistysparametriä voidaan käyttää samaan.
  • Aloitus- ja lopetusparametrien avulla yritämme rajoittaa hakua sen sijaan, että etsimme koko merkkijonoa.
  • Python-funktio rfind () on samanlainen kuin find () -funktio, sillä ainoa ero on, että rfind () antaa korkeimman indeksin annetulle alaosalle ja find () antaa pienimmän eli ensimmäisen indeksin. Sekä rfind () että find () palauttavat -1, jos alimerkkijonoa ei ole.
  • Python-merkkijonohakemisto () on jälleen yksi funktio, joka antaa sinulle alaotsikon sijainnin aivan kuten find (). Ainoa ero näiden kahden välillä on, että index () heittää poikkeuksen, jos alimerkkijonoa ei ole merkkijonossa ja find () palauttaa -1.
  • Voimme käyttää find () -toimintoa löytääksemme alimerkkijonon kokonaismäärän tietyssä merkkijonossa.