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

Как использовать Python без особых усилий?

[

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

Если вам нужно проверить, содержит ли строка подстроку, воспользуйтесь оператором in в 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("Found!")

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

Примеры кода:

1. Подтверждение наличия подстроки в строке

text = "This is a sample text."
substring = "sample"
if substring in text:
print("Substring found!")
else:
print("Substring not found.")

Вывод:

Substring found!

2. Проверка отсутствия подстроки в строке

text = "This is a sample text."
substring = "missing"
if substring not in text:
print("Substring not found!")
else:
print("Substring found.")

Вывод:

Substring not found!

3. Поиск подстроки в столбце pandas DataFrame

Если вам нужно найти подстроку в столбце DataFrame библиотеки pandas, вы можете воспользоваться методом str.contains():

import pandas as pd
data = {'Name': ['John Smith', 'Jane Doe', 'Mike Johnson', 'Sarah Williams'],
'Age': [25, 32, 28, 35]}
df = pd.DataFrame(data)
substring = 'Smith'
filtered_df = df[df['Name'].str.contains(substring)]
print(filtered_df)

Вывод:

Name Age
0 John Smith 25

В этом примере мы ищем подстроку ‘Smith’ в столбце ‘Name’ DataFrame. Метод str.contains() возвращает DataFrame, который содержит только строки, в которых найдена подстрока.

Вот некоторые дополнительные примеры кода, которые вы можете использовать для изучения и практики поиска подстрок в Python:

Общее резюме

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

В дополнение к этому, были представлены дополнительные методы, такие как поиск подстроки без учета регистра, поиск подстроки с использованием регулярных выражений и поиск подстроки в столбце pandas DataFrame.

Теперь у вас есть полезные знания о поиске подстрок в Python, которые помогут вам работать с текстовыми данными и принимать решения на основе наличия подстрок в строках.