Узнайте, как проверить, содержит ли строка подстроку в 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]])
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