В Python есть несколько методов для работы со строками. В этой статье мы покажем вам, как узнать, содержит ли строка подстроку.
Независимо от того, нужно ли проверять строку в слове, букве или фразе, в Python вы можете легко использовать встроенные методы и проверку строки в операторе.
Стоит отметить, что вы получите логическое значение (True или False) или целое число, чтобы указать, содержит ли строка то, которую вы искали. Вы узнаете об этом больше, когда мы покажем код ниже.
Давайте посмотрим на возможные решения, с помощью которых вы можете найти, содержит ли строка конкретное слово/букву.
Предположим, у вас уже есть строка «str», вот как она будет выглядеть:
stringexample = "terminator" "ter" in str
Выход для этого будет «True», потому что строка содержит то, что мы искали. Таким образом, если вы ищете что-то, а в строке этого нет, вы получите «False» в качестве вывода.
Если вы все еще не уверены, позвольте нам написать небольшую программу, чтобы объяснить то же самое:
stringexample = "Terminator" substring = "ter" if substring in stringexample: print ("Мы нашли строку!") else: print ("Строка не найдена!")
Выход для вышеуказанного кода будет:
Мы нашли строку!
Если вы хотите использовать метод для поиска подстроки, вы можете использовать функция find(). Вот как это сделать:
stringexample = "kiki" stringexample.find("ki")
Выход для этого будет 0.
Причина вывода в том, что эта функция возвращает самое низкое значение индекса, когда найдена подстрока.
Если она возвращает -1, это означает, что строка не содержит этой подстроки.
Вот небольшая программа, чтобы показать это в действии:
stringexample = "Kiki" substring = "ki" if stringexample.find("ki") != -1: print ("Мы нашли строку!") else: print ("Строка не найдена!")
Выход для вышеуказанного кода будет:
Мы нашли строку!
__contains __ () – еще одна функция, помогающая проверить, содержит ли строка определенную букву/слово.
Вот как вы можете использовать это:
stringexample = "kiki" stringexample.__contains__("k")
Вы получите вывод как True/False. Для приведенного выше фрагмента кода вы получите вывод в виде:
True
Обратите внимание, что при написании метода используются 4 символа подчеркивания (2 перед словом и 2 после).
Вот программа, чтобы объяснить то же самое:
stringexample = "kiki" if stringexample.__contains__("k") == True: print ("Да, нашел подстроку!") else: print ("Строка не найдена!")
В этом случае вывод:
Да, нашел подстроку!
Завершение
Если вы решите использовать алгоритм поиска с нуля без использования функций или вышеупомянутых решений, вы можете взглянуть на некоторые алгоритмы поиска строк, чтобы узнать о них больше.
Если у вас есть вопросы или предложения, пожалуйста, дайте нам знать.