Python — универсальный и широко используемый язык программирования — предлагает разработчикам множество встроенных функций и методов, упрощающих решение задач. Одной из таких функций является Endswith().
Endswith() — это встроенная функция в строковом классе Python. Она возвращает True, если строка заканчивается указанным значением, и False в противном случае.
Синтаксис:
str.endswith(suffix, start, end)
Здесь str — это строка Python, над которой будет выполняться операция.
Параметр:
- suffix: это может быть одна подстрока или кортеж суффиксов для поиска.
- start (необязательно): начальная позиция в строке Python, с которой должен начаться поиск.
- end (необязательно): конечная позиция в строке Python, где поиск должен завершиться.
Метод string Endwith() в Python возвращает логическое значение:
- True: если строка заканчивается указанным суффиксом (или одним из указанных суффиксов, если указан кортеж суффиксов).
- False: иначе.
Метод Endswith String можно использовать по-разному. Давайте рассмотрим их один за другим.
Пример 1: с подстрокой
Предположим, мы работаем с набором данных, содержащим адреса из разных уголков США. Нам может понадобиться узнать, находится ли адрес в определённом штате. Для этого мы можем проверить, есть ли в конце строки Python аббревиатура штата.
address = "123 Main St, Springfield, IL" if address.endswith("IL"): print("The address is in Illinois.") else: print("The address is not in Illinois.")
Вывод: Если метод Endswith() вернёт значение True, то выполнится оператор if, в противном случае выполнится оператор else.
The address is in Illinois.
Пример 2: с кортежем строк
Если нам нужно проверить несколько подстрок, мы можем использовать кортеж в Python для хранения этих значений. Затем мы можем использовать метод endswith() строки.
Например, в контексте американской киноиндустрии нам может потребоваться проверить, имеет ли файл определённый формат, такой как.mp4,.avi или.mov.
file_name = "movie_usa.MOV" if file_name.endswith((".mp4", ".avi", ".MOV")): print("The file is a valid video format.") else: print("The file is not a valid video format.")
Результат:
The file is a valid video format.
Пример 3: с параметрами начала и конца
Предположим, у нас есть URL, и мы хотим узнать, заканчивается ли его доменная часть на «.com». Известно, что домен начинается после «https://» и заканчивается перед первым слешем или после него.
Для решения этой задачи мы можем воспользоваться методом Endwith() языка Python, указав в качестве параметров начало и конец строки.
url = "https://www.example.com/page1" start_position = len("https://") end_position = url.find("/", start_position) if url.endswith(".com", start_position, end_position): print("The domain ends with .com.") else: print("The domain does not end with .com.")
Здесь мы определяем начало и конец домена в URL. Мы знаем, что домен начинается сразу после «https://», а заканчивается перед первым слешем после протокола.
Для поиска слеша мы можем использовать метод Python `find()`. Этот метод вернёт индекс первого вхождения символа в строке. В нашем случае он будет искать после начальной точки, как уже упоминалось.
Результат:
The domain ends with .com.
Заключение
Функция `endswith()` — это мощный и эффективный инструмент в арсенале строк Python. Она предоставляет простой и удобный способ проверки наличия определённого суффикса в строке.
Мы изучили, что такое функция endswith() в Python, как она работает, какие параметры принимает и какие значения возвращает. Также мы рассмотрели множество наглядных примеров, демонстрирующих использование этой функции для различных задач.