Друкарня від WE.UA

Всіх вітаю! Сьогодні ми розглянемо метод index() у Python, приклади його застосування та відмінність між методом find().

Суть методу

Метод index() отримує деяке значення у якості параметра і намагається знайти його у визначеному рядку. Після того, як він знаходить це значення, ми отримуємо індекс цього значення у рядку.

Крім того, даний метод має ще параметри start та end, які дозволяють вказати початковий та кінцевий індекси рядка, де буде здійснюватися пошук. Таким чином можна обмежити область пошуку значення у рядку.

Використання у коді

Перший приклад

Ось перший приклад:

simple_text = "Something to write about..."
word_in_text = simple_text.index("write")

print(word_in_text)

Тут ми шукаємо слово “write“ у рядку simple_text і в результаті отримуємо індекс початку цього слова — 13.

Тобто, 13 — це індекс, де стоїть перша літера слова “write”, яке ми якраз і шукали. Це можна легко визначити, самостійно рахуючи індекси.

Другий приклад

У другому прикладі ми вказали область пошуку послідовності у рядку за допомогою параметрів start та end у методі index():

simple_text = "Something to write about..."
word_in_text = simple_text.index(" ", 10, 24)

print(word_in_text)

Отже, тут ми шукаємо в області від 10-го індексу до 24-го. У рядку це частина “to write about”. У цьому випадку ціль нашого пошуку — пробіл.

Ось результат:

12

Тобто метод вказав на пробіл, який знаходиться між словами “to” та “write” , а отже, має 12-й індекс.

Відмінність index() від find()

Python має багацько вбудованих методів для роботи з рядками, але деякі з них можуть здатися дуже схожими, такими, що майже не мають відмінностей. Це також стосується методів index() та find().

По суті, ці методи виконують ідентичну роботу, але справа у тому, що їхня поведінка у разі незнаходження заданого значення відрізняється.

Метод index() одразу повертає помилку, якщо не зміг знайти вказану йому послідовність у рядку, а метод find() просто повертає значення -1 без ніяких повідомлень про помилку.

Тепер пропоную поглянути на це у коді, ось приклад із методом index():

simple_text = "Something to write about..."
word_in_text = simple_text.index("topic")

print(word_in_text)

Результат:

ValueError: substring not found

Як бачимо, метод index() одразу повернув помилку, бо не зміг знайти слово “topic” у рядку.

А ось приклад із методом find():

simple_text = "Something to write about..."
word_in_text = simple_text.find("topic")

print(word_in_text)

Результат:

-1

У ідентичній ситуації метод find() не став скаржитися, а просто повернув значення -1.

Висновок

Метод index() шукає відповідне значення у рядку та повертає його індекс. Те саме робить і метод find(), але вони по-різному реагують на випадок незнаходження заданого значення.

Статті про вітчизняний бізнес та цікавих людей:

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Magnifique numérique
Magnifique numérique@nocturnal_reader

Нічний читач

89Довгочити
1.7KПерегляди
27Підписники
Підтримати
На Друкарні з 14 липня 2025

Більше від автора

  • Метод find() у Python

    У цій статті ми розберемо призначення та застосування методу find() у Python.

    Теми цього довгочиту:

    Програмування
  • Новина блогу Magnifique numérique

    У проєкту Magnifique numérique тепер з'явився власний сайт, де будуть викладатися усі нові статті.

    Теми цього довгочиту:

    It

Це також може зацікавити:

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити: