Узнайте, как проверить, содержит ли строка подстроку в Python, и как получить позицию.

В Python нет метода string.contains() . Однако, чтобы проверить, содержит ли строка подстроку, вы можете просто использовать if x in my_string синтаксис:

my_string = "Hello World"
if "World" in my_string:
    print("has substring")

Эта проверка чувствительна к регистру!

Если вам также нужно знать позицию подстроки, вы можете использовать string.find():

my_string.find("World")
# 6

my_string.find("Earth")
# -1

 

Из официальных документов Python :

str.find(sub[, start[, end]])

Возвращает наименьший индекс в строке, в которой находится подстрока в срезе s[start:end]. Необязательные аргументы start и end интерпретируются как в нотации среза. Вернуть -1, если подпрограмма не найдена.

Поэтому имейте в виду, что если строка содержит несколько подстрок, str.find() все равно возвращается только индекс первого найденного индекса.

str.index(x[, start[, end]]) также может использоваться и работает так же, как str.find() за исключением того, что он вызывает ValueError , если подстрока не найдена, вместо возврата -1:

my_string.index("World")
# 6

my_string.index("Earth")
# ValueError: substring not found

 


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии