Пропустить до содержимого

Как легко изменить расширение файла в Python

[

Как изменить расширение файла в Python

Если у вас есть задача изменить расширение файлов в каталоге или папке на другое, Python может быть отличным инструментом для этой задачи. В этом учебнике мы покажем вам, как изменить расширение файла во всех файлах в определенной папке, используя язык программирования Python.

Шаг 1: Получение списка файлов в папке

Первым шагом в решении этой задачи будет получение списка всех файлов в заданной папке. Для этого мы будем использовать модуль os в Python. Вот пример кода, который позволяет получить список файлов в папке:

import os
folder_path = 'путь_к_папке'
# Получить список файлов в папке
files = os.listdir(folder_path)
# Вывести список файлов
for file in files:
print(file)

Шаг 2: Изменение расширения файла

Теперь, когда у нас есть список файлов в заданной папке, мы можем перейти к изменению расширения файлов. Для этого мы будем использовать метод os.rename(). Пример кода для изменения расширения файла:

import os
folder_path = 'путь_к_папке'
old_extension = '.старое_расширение'
new_extension = '.новое_расширение'
# Получить список файлов в папке
files = os.listdir(folder_path)
# Изменить расширение файлов
for file in files:
if file.endswith(old_extension):
# Получить старый путь к файлу
old_file_path = os.path.join(folder_path, file)
# Сформировать новый путь к файлу с новым расширением
new_file_path = os.path.join(folder_path, file.replace(old_extension, new_extension))
# Переименовать файл
os.rename(old_file_path, new_file_path)
print(f'Файл {file} успешно переименован')

Шаг 3: Работа с подпапками

Если внутри заданной папки есть другие подпапки, и вы хотите изменить расширение файлов во всех подпапках, необходимо использовать рекурсию. Вот как вы можете изменить расширение файлов во всех подпапках:

import os
def change_extension(folder_path, old_extension, new_extension):
# Получить список файлов в папке
files = os.listdir(folder_path)
# Изменить расширение файлов
for file in files:
file_path = os.path.join(folder_path, file)
if os.path.isdir(file_path):
# Если файл является папкой, выполнить рекурсивный вызов для этой папки
change_extension(file_path, old_extension, new_extension)
elif file.endswith(old_extension):
# Если файл является файлом и имеет старое расширение, изменить его расширение
new_file_path = os.path.join(folder_path, file.replace(old_extension, new_extension))
os.rename(file_path, new_file_path)
print(f'Файл {file} успешно переименован')
folder_path = 'путь_к_папке'
old_extension = '.старое_расширение'
new_extension = '.новое_расширение'
change_extension(folder_path, old_extension, new_extension)

Заключение

Теперь у вас есть подробные инструкции о том, как изменить расширение файлов во всех файлах в определенной папке с помощью Python. Вы можете использовать этот код в своих собственных проектах или адаптировать его под свои потребности. Удачи в вашей работе с Python!