Metoda Python String find(). vrátí nejnižší index nebo první výskyt podřetězce, pokud je v daném řetězci nalezen.
Příklad
Python3
# initializing a string> word>=> 'find me if you can'> # using string find() method> print>(word.find(>'me'>))> |
>
>Výstup
5>
Syntaxe metody Python String find()
str_obj.find(dílčí, začátek, konec)
Parametry
- sub: Podřetězec, který je třeba hledat v daném řetězci.
- start (volitelné): Počáteční pozice, kde je třeba zkontrolovat podřetězec v řetězci.
- konec (volitelné): Koncová poloha je index poslední hodnoty pro zadaný rozsah. Při kontrole je vyloučeno.
Vrátit se
Vrátí nejnižší index podřetězce, pokud je v daném řetězci nalezen. Pokud není nalezen, vrátí -1.
Poznámka:
- Pokud nejsou uvedeny počáteční a koncové indexy, ve výchozím nastavení se jako počáteční a koncové indexy použijí 0 a délka-1, kde koncové indexy nejsou zahrnuty do našeho vyhledávání.
- Metoda find() je podobná metodě index() . Jediný rozdíl je v tom, že find() vrátí -1, pokud hledaný řetězec není nalezen, a index() v tomto případě vyvolá výjimku.
Co je metoda String find()?
String find() je vestavěná funkce Krajta který se používá k nalezení indexu podřetězce v daném řetězci.
Je to velmi snadná a užitečná funkce řetězce, která nám může pomoci najít daný podřetězec. Vrátí index podřetězce, pokud je v řetězci nalezen, ale pokud podřetězec v řetězci není, vrátí -1.
Jak použít metodu string find()?
Metoda String.find() vrací index podřetězce v řetězci a použití funkce find() je velmi snadné. Stačí zavolat funkci find s objektovým řetězcem a předat podřetězec jako parametr.
Pojďme to lépe pochopit na příkladu:
Python3
string>=> ' hello world is the first code of every programmer'> print>(string.find(>'first'>))> |
>
>
Výstup
20>
Další příklady metody String find()
Podívejme se na některé příklady metody string find() s programy a pochopíme, jak používat metodu string find() s některými variantami. Níže jsou uvedeny způsoby, jak můžeme použít metodu hledání řetězce v Pythonu:
- S argumentem Bez začátku a konce
- S argumenty začátku a konce
- Celkový počet výskytů podřetězce
- Zkontrolujte, zda existuje podřetězec
1. find() s argumentem No start and end
Když nalézt() Funkce je volána bez zadání počátečního a koncového argumentu, hledá první výskyt podřetězce v celém vstupním řetězci od začátku do konce.
V tomto příkladu je metoda find() použita na řetězci ‚geeks for geeks‘ k vyhledání indexu prvního výskytu podřetězců ‚geeks‘ a ‚for‘. Metoda vrací počáteční index podřetězce, pokud je nalezen, a v opačném případě -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'>)> |
>
>
entita vztahováVýstup
Substring 'geeks' found at index: 0 Substring 'for ' found at index: 6 Doesn't contains given substring>
2. find() S argumenty začátek a konec
Když nalézt() Funkce je volána s počátečními a/nebo koncovými argumenty, hledá první výskyt podřetězce v zadané části vstupního řetězce, ohraničené počátečním a/nebo koncovým indexem.
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ýstup
10 -1 -1 6>
3. Celkový počet výskytů podřetězce pomocí funkce find()
Funkci find() lze použít k počítání celkového počtu výskytů slova v řetězci.
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ýstup
Total occurrences are: 2>
4. Pomocí funkce find() zkontrolujte, zda podřetězec existuje
V tomto příkladu kód používá metodu find() ke kontrole, zda podřetězec Python existuje v řetězci Python je výkonný. Pokud je podřetězec nalezen, vypíše zprávu o jeho existenci; jinak vypíše zprávu, že podřetězec v textu 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ýstup
The substring 'Python' exists in the text.>
Pokryli jsme definici, syntaxi a různé příklady metody Python string find(). Tato funkce je velmi užitečná pro hledání podřetězců v řetězci. Je to velmi jednoduchá a snadno použitelná metoda řetězce.
Přečtěte si další Metody pythonských řetězců
Přečtěte si další články související s tím, jak najít podřetězec v řetězci:
- Zkontrolujte, zda řetězec obsahuje podřetězec v Pythonu
- Python | Všechny výskyty podřetězce v řetězci
- Python | Najděte pozici znaku v daném řetězci
- Python | Zkontrolujte, zda je v řetězci přítomen podřetězec