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))