Python Metoda string find() z przykładami
⚡ Inteligentne podsumowanie
Python string find() to wbudowana metoda, która zwraca indeks pierwszego wystąpienia podciągu w ciągu. Zwraca -1, gdy podciąg nie występuje, unikając wyjątków.

Czym jest Python Znajdź ciąg()?
Python Znajdź ciąg() jest funkcją dostępną w Python Biblioteka do znajdowania indeksu pierwszego wystąpienia podciągu w danym ciągu. Funkcja find() zwraca -1 zamiast zgłaszać wyjątek, gdy określony podciąg nie występuje w danym ciągu. Jest to jedna z Pythonnajczęściej używany metody łańcuchowe do lokalizowania tekstu.
Składnia Python szukanie ciągu()
Podstawowa składnia Python find() wygląda następująco:
string.find(substring,start,end)
Parametry metody find().
Oto trzy parametry funkcji find() w Python:
- podciąg: Podciąg, którego chcesz poszukać w podanym ciągu.
- początek: (opcjonalnie) Wartość początkowa, od której rozpocznie się wyszukiwanie podciągu. Domyślnie jest to 0.
- zakończenia: (opcjonalnie) Wartość końcowa, na której zakończy się wyszukiwanie podciągu. Domyślnie wartością jest długość ciągu.
Przykład metody find() z wartościami domyślnymi
Parametry przekazane do Python Metoda find() to podciąg, czyli ciąg, którego szukasz, oraz wartości start i end. Wartość początkowa to domyślnie 0, a wartość końcowa to długość ciągu.
W tym przykładzie użyjemy metody find() w Python z wartościami domyślnymi.
Metoda find() wyszuka podciąg i zwróci pozycję pierwszego wystąpienia podciągu. Jeśli podciąg występuje wielokrotnie w podanym ciągu, zwróci indeks lub pozycję pierwszego wystąpienia.
Przykład:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))
Wyjście:
The position of Tutorials is at: 12
Przykład funkcji find() z użyciem argumentu start
Możesz wyszukać podciąg w podanym ciągu i określić pozycję początkową, od której rozpocznie się wyszukiwanie. W tym celu można użyć parametru start.
Poniższy przykład określa pozycję początkową jako 20, a metoda find() w Python rozpocznie wyszukiwanie od pozycji 20. W tym przypadku pozycją końcową będzie długość ciągu, więc wyszukiwanie będzie kontynuowane do końca ciągu od pozycji 20 w górę.
Przykład:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))
Wyjście:
The position of Tutorials is at 48
Przykład funkcji find() z użyciem argumentów początkowych i końcowych
Używając parametrów początkowych i końcowych, możemy ograniczyć zakres wyszukiwania zamiast przeszukiwać cały ciąg.
Przykład:
mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))
Wyjście:
The position of Tutorials is at 12
Przykład metody find() do znalezienia pozycji danego podciągu w ciągu
Wiemy, że funkcja find() pomaga nam znaleźć indeks pierwszego wystąpienia podciągu. Zwraca -1, jeśli podciąg nie występuje w podanym ciągu. Poniższy przykład pokazuje indeks, gdy ciąg występuje, oraz -1, gdy poszukiwany podciąg nie został znaleziony.
Przykład:
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))
Wyjście:
The position of Best site is at: 27 The position of Guru99 is at: -1
Python ciąg rfind()
Python Funkcja rfind() jest podobna do funkcji find(), z tą różnicą, że rfind() zwraca najwyższy indeks dla danego podciągu, podczas gdy find() zwraca najniższy, czyli pierwszy indeks. Zarówno rfind(), jak i find() zwracają wartość -1, jeśli podciąg nie występuje.
W poniższym przykładzie mamy ciąg „Spotkanie GuruStrona 99 Tutorials. Najlepsza strona dla Python Poradniki!” i spróbuje znaleźć pozycję podciągu Tutorials za pomocą funkcji find() i rfind(). Podciąg Tutorials występuje w ciągu dwukrotnie.
Oto przykład użycia funkcji find() i 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"))
Wyjście:
The position of Tutorials using find() : 12 The position of Tutorials using rfind() : 48
Dane wyjściowe pokazują, że find() zwraca indeks pierwszego znalezionego podciągu Tutorials, natomiast rfind() zwraca indeks ostatniego podciągu Tutorials.
Python indeks ciągu()
Python Funkcja string index() to funkcja, która podaje pozycję podanego podciągu, podobnie jak find(). Jedyną różnicą między nimi jest to, że index() zgłasza wyjątek, jeśli podciąg nie znajduje się w ciągu, podczas gdy find() zwraca wartość -1.
Oto działający przykład pokazujący zachowanie funkcji Index() i Find().
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"))
Wyjście:
The position of Tutorials using find() : 12 The position of Tutorials using index() : 12
Otrzymujemy tę samą pozycję zarówno dla find(), jak i index(). Zobaczmy przykład, gdy podany podciąg nie występuje w ciągu.
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"))
Wyjście:
The position of Tutorials using find() : -1
Traceback (most recent call last):
File "task1.py", line 3, in <module>
print("The position of Tutorials using index() : ", mystring.index("test"))
ValueError: substring not found
W powyższym przykładzie próbujemy znaleźć pozycję podciągu „test”. Podciąg nie występuje w podanym ciągu, więc używając funkcji find() otrzymujemy pozycję -1, ale dla index() zgłasza błąd, jak pokazano powyżej.
Aby znaleźć całkowite wystąpienie podciągu
Aby znaleźć całkowitą liczbę wystąpień podciągu w danym ciągu, skorzystamy z funkcji find() w PythonBędziemy przechodzić przez ciąg za pomocą pętli for od 0 do końca ciągu, korzystając z parametru startIndex dla find().
Zmienne startIndex i count zostaną zainicjowane wartością 0. Wewnątrz pętli for sprawdzimy, czy podciąg znajduje się w podanym ciągu, używając funkcji find() z wartością startIndex równą 0.
Wartość zwrócona przez find(), jeśli różna od -1, zaktualizuje parametr startIndex do indeksu, pod którym znaleziono ciąg, a także zwiększy wartość licznika.
Oto działający przykład:
my_string = "test string test, test string testing, test string test string"
startIndex = 0
count = 0
for i in range(len(my_string)):
k = my_string.find('test', startIndex)
if(k != -1):
startIndex = k+1
count += 1
k = 0
print("The total count of substring test is: ", count )
Wyjście:
The total count of substring test is: 6
»Dowiedz się więcej nt Python Rozdzielenie ciągu()
