Пропустить до содержимого

Как проверить, содержит ли строка подстроку в Python

[

Как проверить, содержит ли строка в Python подстроку

Иногда вам может понадобиться проверить, содержит ли строка подстроку в Python. Это может быть полезно при работе с текстовым содержимым из файла или после получения пользовательского ввода. Вы можете выполнить различные действия в программе в зависимости от наличия или отсутствия подстроки.

В этом руководстве мы рассмотрим наиболее питоничный способ выполнить эту задачу с использованием оператора вхождения “in”. Кроме того, вы узнаете, как выбрать правильные методы строк для связанных, но отличающихся случаев использования.

Наконец, вы также узнаете, как найти подстроки в столбцах DataFrame pandas. Это полезно, если вам нужно искать данные в файле CSV. Если бы вы использовали подход, который мы рассмотрим в следующем разделе, но работали с табличными данными, лучше загрузить данные в DataFrame pandas и искать подстроки в столбцах pandas.

Как подтвердить, что строка в Python содержит другую строку

Если вам нужно проверить, содержит ли строка подстроку, используйте оператор вхождения “in” в Python. В Python это рекомендуемый способ подтвердить наличие подстроки в строке:

raw_file_content = """Hi there and welcome.
This is a special hidden file with a SECRET secret.
I don't want to tell you The Secret,
but I do want to secretly tell you that I have one."""
"secret" in raw_file_content

Оператор вхождения “in” предоставляет быстрый и читаемый способ проверить наличие подстроки в строке. Вы можете заметить, что эта строка кода почти читается на естественном языке.

Примечание: Если вы хотите проверить, что подстрока отсутствует в строке, вы можете использовать оператор “not in”:

"secret" not in raw_file_content

Так как подстрока “secret” присутствует в raw_file_content, оператор “not in” возвращает False.

Когда вы используете “in”, вы получаете логическое значение (булево):

  • True, если Python нашел подстроку
  • False, если Python не нашел подстроку

Вы можете использовать этот интуитивно понятный синтаксис в условных операторах для принятия решений в вашем коде:

if "secret" in raw_file_content:
print("Найдено!")

В этом фрагменте кода вы используете оператор вхождения, чтобы проверить, является ли “secret” подстрокой raw_file_content. Если это так, то вы выведете сообщение на терминал.