методы startswith() и endswith() в Python

Изучаем строковые методы startswith() и endswith() в Python

В Python существует множество методов для работы со строками. Здесь мы рассмотрим методы startswith() и endswith(). Эти методы используются для проверки, начинается или заканчивается ли строка определенной подстрокой.

Метод startswith()

Метод startswith() используется для проверки, начинается ли строка с определенной подстроки. Он возвращает True, если строка начинается с указанной подстроки, и False в противном случае.

Синтаксис

Синтаксис метода startswith() выглядит следующим образом:

str.startswith(prefix[, start[, end]])

где:

  • prefix — обязательный параметр, указывающий подстроку, с которой проверяется начало строки.
  • start — опциональный параметр, указывающий индекс начала поиска в строке (по умолчанию равен 0).
  • end — опциональный параметр, указывающий индекс конца поиска в строке (по умолчанию равен длине строки).

Примеры

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

# Пример 1
str1 = "Hello, world!"
print(str1.startswith("Hello"))  # True

# Пример 2
str2 = "Python is awesome"
print(str2.startswith("is", 7))  # True
# Поиск начинается с индекса 7 (т.е. с символа "i" в слове "is")

# Пример 3
str3 = "Python is easy to learn"
print(str3.startswith("to", 10, 16))  # True
# Поиск начинается с индекса 10 (т.е. с символа "t" в слове "to") и заканчивается перед индексом 16 (т.е. перед символом "l" в слове "learn")

Метод endswith()

Метод endswith() используется для проверки, заканчивается ли строка определенной подстрокой. Он возвращает True, если строка заканчивается указанной подстрокой, и False в противном случае.

Синтаксис

Синтаксис метода endswith() выглядит следующим образом:

str.endswith(suffix[, start[, end]])

где:

  • suffix — обязательный параметр, указывающий подстроку, которой должен заканчиваться строка.
  • start — опциональный параметр, указывающий индекс начала поиска в строке (по умолчанию равен 0).
  • end — опциональный параметр, указывающий индекс конца поиска в строке (по умолчанию равен длине строки).

Примеры

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

# Пример 1
str1 = "Hello, world!"
print(str1.endswith("world!"))  # True

# Пример 2
str2 = "Python is awesome"
print(str2.endswith("is", 0, 9))  # True
# Поиск начинается с индекса 0 и заканчивается перед индексом 9 (т.е. перед символом "e" в слове "awesome")

# Пример 3
str3 = "Python is easy to learn"
print(str3.endswith("to", 10, 16))  # False
# Поиск начинается с индекса 10 (т.е. с символа "t" в слове "to") и заканчивается перед индексом 16 (т.е. перед символом "l" в слове "learn")

Примеры использования методов startswith() и endswith()

Методы startswith() и endswith() могут использоваться во многих ситуациях. Например, они могут быть полезны при работе с файлами, когда нужно проверить, начинается или заканчивается ли имя файла определенным расширением.

Допустим, у нас есть список файлов, и мы хотим вывести только те файлы, которые имеют расширение .txt. Мы можем использовать метод endswith() для этой задачи:

files = ["file1.txt", "file2.jpg", "file3.txt", "file4.py"]

for file in files:
    if file.endswith(".txt"):
        print(file)

#file1.txt
#file3.txt

В результате выполнения этого кода будут выведены только имена файлов file1.txt и file3.txt.

Метод startswith() также может быть полезен при работе с именами файлов, например, когда нужно проверить, начинается ли имя файла с определенного префикса. Например:

files = ["abc_file1.txt", "xyz_file2.jpg", "abc_file3.txt", "xyz_file4.py"]

for file in files:
    if file.startswith("abc"):
        print(file)

#abc_file1.txt
#abc_file3.txt

В результате выполнения этого кода будут выведены только имена файлов abc_file1.txt и abc_file3.txt.

Заключение

Методы startswith() и endswith() позволяют удобно проверять, начинается или заканчивается ли строка определенной подстрокой. Эти методы могут быть полезны при работе с файлами, при парсинге данных или при обработке строк в общем. Они просты в использовании и широко используются в Python.

Содержание: