Answer

Answer

t.me/python_tesst

Ответ:

ext

ext

ext

Объяснение:

Долго расписывать здесь не будем, а максимально постараемся описать в комментариях кода.

Код:

# Импортируем стандартный модуль re для работы с регулярными выражениями
import re

# Создаем константу для имени файла, которое будет использовать для тестов
FILENAME = 'folder1/folder2/file.ext'


# Вариант решения 1 - пользуемся срезами
def extention_slice(filename):
    # Находим индекс точки
    point_pos = filename.find('.')
    # Возвращаем срез начиная с позиции после точки и до конца имени файла
    return filename[point_pos + 1:]


# Вариант решения 2 - используем функцию partition()
def extention_part(filename):
    # С помощью метода partition() разбиваем имя файла на 3 части
    # В качестве разделителя используем символ '.'
    # Метод partition() возвращает кортеж из 3 элеметов
    # Возвращаем 3-й элемент
    return filename.partition('.')[2]


# Вариант решения 3 - пользуемся регулярными выражениями
def extention_regex(filename):
    # Формируем регулярное выражение для поиска расширения:
    # \. - ищем символ точки в строке
    # .+$ - после точки ищем любые символы вплоть до конца строки
    # (.+$) - скобками формируем группу(это необходимо, чтобы получить не точку с расширением, а только само расширение)
    regex = r'\.(.+$)'
    # Обращаемся к модулю re и вызываем для него метод search для поиска подстроки по регулярному выражению
    # Из результата берем группу с индексом 1 
    # Это часть подстроки, которая подходит под выражение в скобках (например, 'ext')
    # Группа с индексом 0 - это полная подстрока, подходящая под регулярное выражение(например, '.ext')
    return re.search(regex, filename)[1]


# Тесты
if __name__ == '__main__':
    print(extention_slice(FILENAME))
    print(extention_part(FILENAME))
    print(extention_regex(FILENAME))


Report Page