Автор оригинала: Team Python Pool.
Как использовать строковый метод Python find() | Python find()
Как программисты, мы всегда ищем ярлыки для общих запросов, таких как поиск первого элемента строки, поиск подстрок строки, поиск индекса строки в списке, поиск всех вхождений символа в строке и многие такие общие, но полезные вещи. Итак, в этой статье мы узнаем, как найти вещи в python.
В python у нас есть функция find() для выполнения некоторых из вышеперечисленных операций в строке. Мы можем использовать его, чтобы найти определенное слово или определенный символ. Итак, давайте сначала узнаем о функции find() в python.
Рассечение Find() в Python
string.find(sub[, start[, end]])
Параметры– Есть три параметра – sub, start и end. Sub-это подстрока. Начало и конец являются необязательными. Они задают начальный и конечный диапазон строки для поиска.
Return Type– find() возвращает значение целочисленного типа.
find() возвращает самый низкий индекс в строке, где найдена подстрока sub. Мы также можем дать диапазон , используя начальные и конечные параметры, которые являются полностью необязательными. Самое лучшее в find() заключается в том, что если этой подстроки нет, она не выдает ошибку (что делает index ()), а вместо этого возвращает -1.
Некоторые распространенные программы python, использующие find()
Поиск конкретного персонажа
Здесь мы дали строку- "мы изучаем python" и подстроку – 'e', которая, если мы посмотрим, находится сразу после 'w', то есть в индексе-1.
Enter a string:hello, we are learning python Enter the character, you want to find:e First occurence of e is at location:1
Поиск определенного символа в диапазоне
Enter a string:My name is Ashwini Mandani Enter the character, you want to find:M Occurence of M is at location:19
Здесь мы пытаемся найти символ 'M' между индексом -(5,последний)
Первое вхождение подстроки в строку
Точно так же, как мы сделали для символа, мы также можем найти целое слово в строке.
Enter a string:Can you can a can as a canner can can a can? Enter the word, you want to find:can Occurence of can is at location:8
Как найти первое вхождение строки из последнего
В отличие от index(), funds() возвращает -1 подстроки не находится в строке, и поскольку java не находится в строке, он возвращает -1. Обратите внимание, что пробел также учитывается в индексе, Для этого нам нужно использовать finditer() регулярных выражений. Мы будем href="https://dictionary.cambridge.org/dictionary/english/iterate">итерация по строке и везде, где находится подстрока, она вернет span подстроки. href="https://dictionary.cambridge.org/dictionary/english/iterate">итерация по строке и везде, где находится подстрока, она вернет span подстроки. Выполните цикл над строкой и везде, где будет найдена подстрока, верните индекс. Мы не можем использовать index() для поиска индекса элемента в массиве numpy. Если мы попытаемся использовать, это даст Ошибку атрибута. В этой статье мы рассмотрели много важных вещей. Обсуждаемые здесь программы очень распространены в крупных проектах. Теперь мы знаем python find() и его параметр. Мы также можем использовать функцию index (), но она выдает ошибку, если подстроки нет в строке. Попробуйте запустить программы на вашей стороне и дайте нам знать, если у вас есть какие-либо вопросы. Счастливого кодирования!Enter a string:Can you can a can as a canner can can a can?
Enter the word, you want to find:can
Occurence of can is at location:40
Что делать, если подстрока не найдена в строке
Enter a string:Python is the best
Enter the word, you want to find:java
Substring not found loc= -1
Еще Несколько Примеров
Чтобы найти все вхождения подстроки в строке.
import re
# iterating through the string
for sub in re.finditer('can', 'Can you can a can as a canner can can a can?'):
# printing the span from where to where the substring occurred in the string
print(sub.span())
Чтобы найти индекс элемента в списке
list1=[100,32,21,31,43,12,324]
print(list1.index(12))
Output-
5
Чтобы найти индекс всех вхождений строки в списке.
list1=['Can', 'you', 'can', 'a', 'can' ,'as', 'a','canner', 'can' ,'can' ,'a' ,'can?']
# looping through the list and checking if the substring matches the string #at a particular index or not
for i in range(len(list1)):
if:
print(i)
2
4
8
9
Как найти индекс элемента в массиве python numpy
import numpy as np.array([21,223,123,653,322,653])
# look for the index where array is 653)
(array([3, 5],),)
Должен Читать:
Вывод