- Python String find()
- Introduction to Python string find() method
- Python string find() method examples
- 1) Using the Python string find() method to find a substring in a string
- 2) Using the Python string find() method to find a substring in a string within a slice
- 3) The substring doesn’t exist in the string example
- Summary
- Строки. Функции и методы строк
- Базовые операции
- Таблица «Функции и методы строк»
- Методы find() и rfind() в Python: синтаксис, описание и примеры
- Синтаксис
- Примеры использования метода find()
- Примеры использования метода rfind()
- Отличия между find() и index()
- Заключение
Python String find()
Summary: in this tutorial, you’ll learn how to use the Python string find() method effectively to find a substring in a string.
Introduction to Python string find() method
The find() is a string method that finds a substring in a string and returns the index of the substring.
The following illustrates the syntax of the find() method:
str.find(sub[, start[, end]])
Code language: CSS (css)
The find() method accepts three parameters:
- sub is the substring to look for in the str .
- start and end parameters are interpreted as in the slice str[start:end] , which specifies where to search for the substring sub .
Both start and end parameters are optional. The start parameter defaults to zero. And the end parameter defaults to the length-1 where length is the length of the str .
If the str doesn’t contain the substring sub within the slice str[start:end] , the find() method returns -1.
In practice, you should use the find() method only if you want to know the position of the substring. If you just want to check whether a string contains a substring, you should use the in operator instead:
Python string find() method examples
Let’s take some examples of using the find() method.
1) Using the Python string find() method to find a substring in a string
The following example shows how to use the find() method to find the substring ‘Johny’ in the string ‘Johny Johny Yes Papa’ :
s = 'Johny Johny Yes Papa' result = s.find('Python') print(result)
Code language: PHP (php)
Because the string ‘Johny Johny Yes Papa’ has two substrings ‘Johny’ , the find() method returns the index of the first occurrence of the substring ‘Johny’ .
2) Using the Python string find() method to find a substring in a string within a slice
The following example uses the find() method to locate the substring ‘Johny’ in the string ‘Johny Johny Yes Papa’ within the slice str[1:] :
s = 'Johny Johny Yes Papa' result = s.find('Johny', 1) print(result)
Code language: PHP (php)
In this example, the find() method returns the index of the second occurrence of the substring ‘Johny’ in the string ‘Johny Johny Yes Papa’ .
3) The substring doesn’t exist in the string example
The following example returns -1 because the substring ‘Julia’ doesn’t exist in the string ‘Johny Johny Yes Papa’ :
s = 'Johny Johny Yes Papa' result = s.find('Julia') print(result)
Code language: PHP (php)
Summary
- Use Python string find() to find a substring in a string.
- The find() method returns -1 if the substring is not found.
Строки. Функции и методы строк
Итак, о работе со строками мы немного поговорили, теперь поговорим о функциях и методах строк.
Я постарался собрать здесь все строковые методы и функции, но если я что-то забыл — поправляйте.
Базовые операции
При вызове методов необходимо помнить, что строки в Python относятся к категории неизменяемых последовательностей, то есть все функции и методы могут лишь создавать новую строку.
: Поэтому все строковые методы возвращают новую строку, которую потом следует присвоить переменной.
Таблица «Функции и методы строк»
Функция или метод | Назначение |
---|---|
S = ‘str’; S = «str»; S = »’str»’; S = «»»str»»» | Литералы строк |
S = «s\np\ta\nbbb» | Экранированные последовательности |
S = r»C:\temp\new» | Неформатированные строки (подавляют экранирование) |
S = b»byte» | Строка байтов |
S1 + S2 | Конкатенация (сложение строк) |
S1 * 3 | Повторение строки |
S[i] | Обращение по индексу |
S[i:j:step] | Извлечение среза |
len(S) | Длина строки |
S.find(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер первого вхождения или -1 |
S.rfind(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер последнего вхождения или -1 |
S.index(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер первого вхождения или вызывает ValueError |
S.rindex(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер последнего вхождения или вызывает ValueError |
S.replace(шаблон, замена[, maxcount]) | Замена шаблона на замену. maxcount ограничивает количество замен |
S.split(символ) | Разбиение строки по разделителю |
S.isdigit() | Состоит ли строка из цифр |
S.isalpha() | Состоит ли строка из букв |
S.isalnum() | Состоит ли строка из цифр или букв |
S.islower() | Состоит ли строка из символов в нижнем регистре |
S.isupper() | Состоит ли строка из символов в верхнем регистре |
S.isspace() | Состоит ли строка из неотображаемых символов (пробел, символ перевода страницы (‘\f’), «новая строка» (‘\n’), «перевод каретки» (‘\r’), «горизонтальная табуляция» (‘\t’) и «вертикальная табуляция» (‘\v’)) |
S.istitle() | Начинаются ли слова в строке с заглавной буквы |
S.upper() | Преобразование строки к верхнему регистру |
S.lower() | Преобразование строки к нижнему регистру |
S.startswith(str) | Начинается ли строка S с шаблона str |
S.endswith(str) | Заканчивается ли строка S шаблоном str |
S.join(список) | Сборка строки из списка с разделителем S |
ord(символ) | Символ в его код ASCII |
chr(число) | Код ASCII в символ |
S.capitalize() | Переводит первый символ строки в верхний регистр, а все остальные в нижний |
S.center(width, [fill]) | Возвращает отцентрованную строку, по краям которой стоит символ fill (пробел по умолчанию) |
S.count(str, [start],[end]) | Возвращает количество непересекающихся вхождений подстроки в диапазоне [начало, конец] (0 и длина строки по умолчанию) |
S.expandtabs([tabsize]) | Возвращает копию строки, в которой все символы табуляции заменяются одним или несколькими пробелами, в зависимости от текущего столбца. Если TabSize не указан, размер табуляции полагается равным 8 пробелам |
S.lstrip([chars]) | Удаление пробельных символов в начале строки |
S.rstrip([chars]) | Удаление пробельных символов в конце строки |
S.strip([chars]) | Удаление пробельных символов в начале и в конце строки |
S.partition(шаблон) | Возвращает кортеж, содержащий часть перед первым шаблоном, сам шаблон, и часть после шаблона. Если шаблон не найден, возвращается кортеж, содержащий саму строку, а затем две пустых строки |
S.rpartition(sep) | Возвращает кортеж, содержащий часть перед последним шаблоном, сам шаблон, и часть после шаблона. Если шаблон не найден, возвращается кортеж, содержащий две пустых строки, а затем саму строку |
S.swapcase() | Переводит символы нижнего регистра в верхний, а верхнего – в нижний |
S.title() | Первую букву каждого слова переводит в верхний регистр, а все остальные в нижний |
S.zfill(width) | Делает длину строки не меньшей width, по необходимости заполняя первые символы нулями |
S.ljust(width, fillchar=» «) | Делает длину строки не меньшей width, по необходимости заполняя последние символы символом fillchar |
S.rjust(width, fillchar=» «) | Делает длину строки не меньшей width, по необходимости заполняя первые символы символом fillchar |
S.format(*args, **kwargs) | Форматирование строки |
Для вставки кода на Python в комментарий заключайте его в теги
Методы find() и rfind() в Python: синтаксис, описание и примеры
Методы find() и rfind() являются встроенными методами строк в Python, которые позволяют находить подстроки в строке. Метод find() возвращает индекс первого вхождения подстроки, а метод rfind() возвращает индекс последнего вхождения подстроки. Оба метода возвращают -1, если подстрока не найдена.
Синтаксис
Синтаксис метода find() выглядит следующим образом:
Здесь str — это исходная строка, sub — это подстрока, которую нужно найти. start и end — необязательные параметры, которые указывают диапазон индексов в строке, в котором нужно искать подстроку.
Метод rfind() работает аналогично, но ищет последнее вхождение подстроки в строку, начиная с конца строки.
Синтаксис метода rfind() выглядит так:
Здесь str , sub , start и end имеют те же значения, что и в методе find() .
Оба метода возвращают индекс первого (или последнего) вхождения подстроки в строку. Если подстрока не найдена, то метод возвращает -1. Если указаны аргументы start и end , то поиск будет производиться только в этом диапазоне индексов. Если эти аргументы не указаны, то поиск будет производиться во всей строке.
Примеры использования метода find()
Пример 1: Поиск подстроки в строке
text = "Hello, World!" substring = "World" index = text.find(substring) print(index) #7
Пример 2: Поиск подстроки в строке с заданными начальным и конечным индексами
text = "Hello, World! World!" substring = "World" index = text.find(substring, 8, 20) print(index) #14
Примеры использования метода rfind()
Пример 3: Поиск последнего вхождения подстроки в строке
text = "Hello, World! World!" substring = "World" index = text.rfind(substring) print(index) #14
Пример 4: Поиск последнего вхождения подстроки в строке с заданными начальным и конечным индексами
text = "Hello, World! World! World!" substring = "World" index = text.rfind(substring, 0, 20) print(index) #14
Отличия между find() и index()
Метод index() также позволяет находить подстроки в строке, но, в отличие от методов find() и rfind() , вызывает исключение ValueError , если подстрока не найдена. В свою очередь, методы find() и rfind() возвращают -1 в случае отсутствия подстроки.
Пример 5: Использование метода index() для поиска подстроки
text = "Hello, World!" substring = "World" try: index = text.index(substring) print(index) except ValueError: print("Substring not found") #7
Пример 6: Использование метода index() для поиска отсутствующей подстроки
text = "Hello, World!" substring = "Python" try: index = text.index(substring) print(index) except ValueError: print("Substring not found") #Substring not found
Заключение
В этой статье мы рассмотрели методы find() и rfind() в Python, которые позволяют находить подстроки в строке. Изучили основной синтаксис этих методов и привели различные примеры их использования, такие как поиск первого и последнего вхождения подстроки, а также использование метода index() .
Реализация повторения функций в Python
Преобразование списка в обратный список в Python: методы и приемы
Изучаем строковые методы startswith() и endswith() в Python
3 простых способа получить последний элемент словаря в Python
Использование функции id() в Python: примеры и описание
Функция compile() в Python: компиляция кода для выполнения