Kas ir Python String find ()?
Python virknes atrašana () ir funkcija, kas pieejama Python bibliotēkā, lai no norādītās virknes atrastu apakšgrupas pirmās parādīšanās indeksu. Funkcija string find () atgriež -1, nevis izņēmumu, ja norādītā apakšvirkne nav norādītajā virknē.
Šajā Python virknes atrast () metodes apmācībā jūs uzzināsiet:
- Kas ir Python String find ()?
- Python virknes atraduma sintakse ()
- Metodes find () piemērs ar noklusējuma vērtībām
- Find () piemērs, izmantojot sākuma argumentu
- Atrast () piemērs, izmantojot sākuma un beigu argumentus
- Metodes find () piemērs Lai atrastu dotā apakšvirsraksta pozīciju virknē
- Python virkne rfind ()
- Python virknes indekss ()
- Lai atrastu apakškārtas kopējo sastopamību
Python virknes atraduma sintakse ()
Funkcijas Python find () pamata sintakse ir šāda:
string.find(substring,start,end)
Metodes find () parametri
Šeit ir trīs funkcijas String find () parametri Python:- apakšvirkne : apakšvirkne, kuru vēlaties meklēt dotajā virknē.
- start : (pēc izvēles) Sākuma vērtība, no kuras sāksies apakšvirsraksta meklēšana. Pēc noklusējuma tas ir 0.
- end : (pēc izvēles) Beigu vērtība, kurā beigsies apakšvirsraksta meklēšana. Pēc noklusējuma vērtība ir virknes garums.
Metodes find () piemērs ar noklusējuma vērtībām
Parametri, kas nodoti Python find () metodei, ir apakšvirknes, ti, virkne, kuru vēlaties meklēt, sākt un beigt. Sākuma vērtība pēc noklusējuma ir 0, un beigu vērtība ir virknes garums.
Šajā piemērā mēs izmantosim metodi atrast () Python ar noklusējuma vērtībām.
Metode find () meklēs apakšvirkni un norādīs pozīciju pirmajai apakšvirsmas parādīšanās vietai. Tagad, ja apakšvirkne attiecīgajā virknē atrodas vairākas reizes, tā joprojām atgriezīs jums pirmās indeksu vai pozīciju.
Piemērs:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials"))
Izeja:
The position of Tutorials is at: 12
Find () piemērs, izmantojot sākuma argumentu
Jūs varat meklēt apakšvirsrakstu dotajā virknē un norādīt sākuma pozīciju, no kuras sāksies meklēšana. Sākuma parametru var izmantot tam pašam.
Piemērā sākuma pozīcija tiks norādīta kā 15, un meklēšana () Python metodē sāks meklēšanu no 15. pozīcijas. Šeit gala pozīcija būs virknes garums un līdz virknes beigām meklēs no 15 pozīcijām. uz priekšu.
Piemērs:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Izeja:
The position of Tutorials is at 48
Atrast () piemērs, izmantojot sākuma un beigu argumentus
Izmantojot sākuma un beigu parametru, mēs mēģināsim ierobežot meklēšanu, nevis meklēt visu virkni.
Piemērs:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Izeja:
The position of Tutorials is at 12
Metodes find () piemērs Lai atrastu dotā apakšvirsraksta pozīciju virknē
Mēs zinām, ka find () palīdz mums atrast indeksu pirmajai apakšstringa parādībai. Tas atgriež -1, ja apakšvirkne nav norādītajā virknē. Zemāk sniegtajā piemērā parādīts indekss, kad ir virkne, un -1, kad mēs neatrodam meklēto apakšvirkni.
Piemērs:
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))
Izeja:
The position of Best site is at: 27The position of Guru99 is at: -1
Python virkne rfind ()
Python funkcija rfind () ir līdzīga funkcijai find () ar vienīgo atšķirību ir tā, ka rfind () dod augstāko doto apakšvirsraksta indeksu, bet find () - zemāko, ti, pašu pirmo indeksu. Gan rfind (), gan find () atgriezīs -1, ja apakšstringa nav.
Tālāk sniegtajā piemērā mums ir virkne "Iepazīstieties ar Guru99 apmācību vietni. Labākā vietne Python apmācībām!" un mēģinās atrast apakšvirsrakstu apmācības pozīciju, izmantojot find () un rfind (). Apmācību skaits virknē ir divreiz lielāks.
Šeit ir piemērs, kur tiek izmantoti gan find (), gan 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"))
Izeja:
The position of Tutorials using find() : 12The position of Tutorials using rfind() : 48
Rezultātā tiek parādīts, ka find () dod pirmās iegūtās apmācības apakšvirsraksta indeksu, bet rfind () - pēdējais apakšvirsrakstu apmācības indekss.
Python virknes indekss ()
Python virknes indekss () ir funkcija, kas jums sniegs apakšvirsraksta pozīciju tāpat kā find (). Vienīgā atšķirība starp abām ir tā, ka indekss () radīs izņēmumu, ja apakšvirsraksts virknē nav atrodams, un find () atgriezīsies -1.
Šis ir piemērs, kas parāda indeksa () un meklēšanas () uzvedību.
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"))
Izeja:
The position of Tutorials using find() : 12The position of Tutorials using index() : 12
Mēs iegūstam vienādu pozīciju gan atrast (), gan indeksam (). Apskatīsim piemēru, kad dotā apakšvirkne virknē nav.
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"))
Izeja:
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
Iepriekš minētajā piemērā mēs cenšamies atrast apakšvirknes "testa" pozīciju. Apakšvirkne dotajā virknē nav, un tāpēc, izmantojot meklēšanu (), mēs iegūstam pozīciju kā -1, bet indeksam () tas rada kļūdu, kā parādīts iepriekš.
Lai atrastu apakškārtas kopējo sastopamību
Lai atrastu kopējo reižu skaitu, kad apakšvirkne ir notikusi dotajā virknē, mēs izmantosim funkciju find () Python. Cilpos pa virkni, izmantojot for-loop no 0 līdz virknes beigām. Izmantos startIndex parametru meklēšanai ().
Mainīgie startIndex un count tiks inicializēti līdz 0. Inside for -loop pārbaudīs, vai apakšvirsraksts atrodas virknes iekšpusē, izmantojot find () un startIndex kā 0.
Vērtība, kas atgriezta no find (), ja nav -1, atjauninās startIndex līdz indeksam, kurā atrodas virkne, un palielinās arī skaitīšanas vērtību.
Šis ir piemērs:
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 )
Izeja:
The total count of substring test is: 6
Kopsavilkums
- Metode Python string find () palīdz atrast apakšvirsmas pirmās parādīšanās indeksu dotajā virknē. Tas atgriezīsies -1, ja apakšvirknes nav.
- Parametri, kas nodoti Python atrast apakšvirknes metodi, ir apakšvirknes, ti, virkne, kuru vēlaties meklēt, sākt un beigt. Sākuma vērtība pēc noklusējuma ir 0, un beigu vērtība ir virknes garums.
- Jūs varat meklēt apakšvirsrakstu dotajā virknē un norādīt sākuma pozīciju, no kuras sāksies meklēšana. Sākuma parametru var izmantot tam pašam.
- Izmantojot sākuma un beigu parametru, mēs mēģināsim ierobežot meklēšanu, nevis meklēt visu virkni.
- Python funkcija rfind () ir līdzīga funkcijai find () ar vienīgo atšķirību ir tā, ka rfind () dod augstāko doto apakšvirsraksta indeksu, bet find () - zemāko, ti, pašu pirmo indeksu. Gan rfind (), gan find () atgriezīs -1, ja apakšstringa nav.
- Python virknes indekss () ir vēl viena funkcija, kas jums sniegs apakšvirsraksta pozīciju tāpat kā find (). Vienīgā atšķirība starp abām ir tā, ka indekss () radīs izņēmumu, ja apakšvirsraksts virknē nav atrodams, un find () atgriezīsies -1.
- Mēs varam izmantot find (), lai atrastu apakškārtas kopējo gadījumu skaitu attiecīgajā virknē.