Метод str.index() в Python — примеры поиска индекса подстроки в строке

В этом уроке вы узнаете, как использовать метод Python string index() для получения индекса подстроки в строке.

Содержание

Что такое метод String index() в Python?

Метод string index() возвращает наименьший индекс подстроки в строке.

Ниже показан синтаксис метода index():

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

Метод index() имеет три параметра:

  • sub — подстрока, которую нужно найти в строке str.
  • Параметры start и end интерпретируются как в записи среза str[start:end]. Срез указывает, где искать подстроку sub. Оба параметра start и end являются необязательными.

Если str не содержит подстроку sub внутри среза str[start:end], метод index() вызовет исключение ValueError.

Если вы не хотите получать ValueError, когда подпрограмма не найдена, вы можете использовать метод string find(). Метод find() возвращает -1 вместо того, чтобы вызывать ValueError.

Обратите внимание: если вы просто хотите проверить, содержится ли подстрока в строке, вы можете использовать оператор in.

Примеры метода Python string index()

Давайте рассмотрим несколько примеров использования метода index().

1) Поиск позиции подстроки в строке

В следующем примере показано, как использовать метод index() для поиска подстроки «Python» в строке «Python will, Python will rock you.»:

s = 'Python will, Python will rock you.'
position = s.index('Python')

print(position)

Выход:

0

Поскольку строка имеет две подстроки «Python», метод index() возвращает наименьший индекс, в котором подстрока найдена в строке.

2) Поиск позиции подстроки в строке внутри среза

В следующем примере метод index() используется для поиска подстроки «Python» в строке «Python will, Python will rock you.» внутри среза str[1:]:

s = 'Python will, Python will rock you.'
position = s.index('Python', 1)

print(position)

Выход:

13

В этом примере метод index() возвращает позицию второго вхождения подстроки в строке.

3) Подстрока не существует в примере строки

В следующем примере возникает ошибка ValueError, поскольку подстрока «Java» отсутствует в строке «Python will, Python will rock you.»:

s = 'Python will, Python will rock you.'
position = s.index('Java')

print(position)

Выход:

ValueError: substring not found

Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *