Metóda pythonského reťazca find(). vráti najnižší index alebo prvý výskyt podreťazca, ak sa nachádza v danom reťazci.
Príklad
Python3
# initializing a string> word>=> 'find me if you can'> # using string find() method> print>(word.find(>'me'>))> |
>
>Výkon
5>
Syntax metódy Python String find().
str_obj.find(sub, začiatok, koniec)
Parametre
- pod: Podreťazec, ktorý je potrebné vyhľadať v danom reťazci.
- štart (voliteľné): Počiatočná pozícia, kde je potrebné skontrolovať podreťazec v rámci reťazca.
- koniec (voliteľné): Koncová poloha je index poslednej hodnoty pre špecifikovaný rozsah. Pri kontrole je to vylúčené.
Návrat
Vráti najnižší index podreťazca, ak sa nachádza v danom reťazci. Ak sa nenájde, vráti -1.
Poznámka:
- Ak počiatočný a koncový index nie je poskytnutý, potom sa štandardne berie 0 a dĺžka-1 ako počiatočné a koncové indexy, pričom koncové indexy nie sú zahrnuté v našom vyhľadávaní.
- Metóda find() je podobná metóde index() . Jediný rozdiel je v tom, že find() vráti -1, ak sa hľadaný reťazec nenájde, a index() v tomto prípade vyvolá výnimku.
Čo je metóda String find()?
String find () je vstavaná funkcia Python ktorý sa používa na nájdenie indexu podreťazca v rámci daného reťazca.
Je to veľmi jednoduchá a užitočná funkcia reťazca, ktorá nám môže pomôcť nájsť daný podreťazec. Vráti index podreťazca, ak sa nachádza v reťazci, ale ak sa podreťazec v reťazci nenachádza, vráti hodnotu -1.
Ako použiť metódu string find ()?
Metóda String.find() vracia index podreťazca v reťazci a použitie funkcie find() je veľmi jednoduché. Stačí zavolať funkciu find s reťazcom objektu a odovzdať podreťazec ako parameter.
Poďme to lepšie pochopiť na príklade:
Python3
string>=> ' hello world is the first code of every programmer'> print>(string.find(>'first'>))> |
>
>
Výkon
20>
Ďalšie príklady metódy String find()
Pozrime sa na niekoľko príkladov metódy string find() s programami a pochopíme, ako používať metódu string find() s niektorými variáciami. Nižšie sú uvedené spôsoby, ako môžeme použiť metódu vyhľadávania reťazcov v Pythone:
- Bez argumentu začiatku a konca
- S argumentmi začiatku a konca
- Celkový počet výskytov podreťazca
- Skontrolujte, či existuje podreťazec
1. find() s argumentom Bez začiatku a konca
Keď Nájsť() funkcia sa volá bez zadania počiatočných a koncových argumentov, hľadá prvý výskyt podreťazca v rámci celého vstupného reťazca od začiatku do konca.
V tomto príklade sa metóda find() používa v reťazci „geeks for geeks“ na nájdenie indexu prvého výskytu podreťazcov „geeks“ a „for“. Metóda vráti počiatočný index podreťazca, ak sa nájde, a v opačnom prípade -1.
Python3
word>=> 'geeks for geeks'> # returns first occurrence of Substring> result>=> word.find(>'geeks'>)> print>(>'Substring 'geeks' found at index:'>, result)> result>=> word.find(>'for'>)> print>(>'Substring 'for ' found at index:'>, result)> # How to use find()> if> word.find(>'pawan'>) !>=> ->1>:> >print>(>'Contains given substring '>)> else>:> >print>(>'Doesn't contains given substring'>)> |
>
>
fizzbuzz javaVýkon
Substring 'geeks' found at index: 0 Substring 'for ' found at index: 6 Doesn't contains given substring>
2. find() S argumentmi začiatku a konca
Keď Nájsť() Funkcia sa volá so začiatočnými a/alebo koncovými argumentmi, hľadá prvý výskyt podreťazca v rámci zadanej časti vstupného reťazca, ohraničeného začiatočnými a/alebo koncovými indexmi.
Python3
word>=> 'geeks for geeks'> # Substring is searched in 'eks for geeks'> print>(word.find(>'ge'>,>2>))> # Substring is searched in 'eks for geeks'> print>(word.find(>'geeks '>,>2>))> # Substring is searched in 's for g'> print>(word.find(>'g'>,>4>,>10>))> # Substring is searched in 's for g'> print>(word.find(>'for '>,>4>,>11>))> |
>
>Výkon
10 -1 -1 6>
3. Celkový počet výskytov podreťazca pomocou funkcie find()
Funkciu find() možno použiť na sčítanie celkového počtu výskytov slova v reťazci.
Python3
main_string>=> 'Hello, hello, Hello, HELLO! , hello'> sub_string>=> 'hello'> count_er>=>0> start_index>=>0> for> i>in> range>(>len>(main_string)):> >j>=> main_string.find(sub_string,start_index)> >if>(j!>=>->1>):> >start_index>=> j>+>1> >count_er>+>=>1> print>(>'Total occurrences are: '>, count_er)> |
>
>Výkon
Total occurrences are: 2>
4. Skontrolujte, či existuje podreťazec pomocou funkcie find().
V tomto príklade kód používa metódu find() na kontrolu, či podreťazec Python existuje v reťazci Python je výkonný. Ak je podreťazec nájdený, vypíše správu označujúcu jeho existenciu; v opačnom prípade vypíše správu o tom, že podreťazec v texte neexistuje.
Python3
text>=> 'Python is powerful.'> substring>=> 'Python'> if> text.find(substring) !>=> ->1>:> >print>(f>'The substring '{substring}' exists in the text.'>)> else>:> >print>(f>'The substring '{substring}' does not exist in the text.'>)> |
>
>Výkon
The substring 'Python' exists in the text.>
Pokryli sme definíciu, syntax a rôzne príklady metódy Python string find(). Táto funkcia je veľmi užitočná pri hľadaní podreťazcov v reťazci. Je to veľmi jednoduchá a ľahko použiteľná metóda reťazca.
Prečítajte si iné Metódy reťazca Python
Prečítajte si ďalšie články o tom, ako nájsť podreťazec v reťazci:
- Skontrolujte, či reťazec obsahuje podreťazec v Pythone
- Python | Všetky výskyty podreťazca v reťazci
- Python | Nájdite pozíciu znaku v danom reťazci
- Python | Skontrolujte, či sa v reťazci nachádza podreťazec