Раньше у меня была настоящая головная боль с этими файлами. Они просто накапливались в одной большой куче, и я никак не могла разобраться, где что лежит. Но теперь, стоит мне запустить этот чудо-скрипт, и все файлы сами расфасовываются по соответствующим папкам! Фотографии отправляются в папку «Фото», документы - в папку «Документы», а музыка - в папку «Музыка». Это просто потрясающе! Я больше не трачу часы на то, чтобы вручную переносить файлы туда-сюда. Так что не ждите, действуйте прямо сейчас. Загрузите этот скрипт и насладитесь чистотой и организованностью на своем рабочем столе. Вы не пожалеете, обещаю!
#Это оператор импорта,
#который позволяет использовать функции и методы из модуля os.
#Модуль os предоставляет функции
#для работы с операционной системой,
#такие как создание и удаление файлов, р
#абота с путями к файлам и папкам, управление процессами и т.д.
import os
#Это оператор импорта,
#который позволяет использовать функции и методы из модуля shutil.
#Модуль shutil предоставляет высокоуровневые операции
#для работы с файлами и папками,
#такие как копирование, перемещение и удаление.
import shutil
# Функция для создания папки, если её нет
# Это объявление функции с именем create_folder_if_not_exists,
#которая принимает один аргумент folder_name.
def create_folder_if_not_exists(folder_name):
#Это условный оператор if, который проверяет,
#существует ли папка с именем,
#переданным в качестве аргумента функции.
#Функция os.path.exists()
#возвращает True, если папка существует, и False, если нет.
if not os.path.exists(folder_name):
#Эта строка создает новую папку с именем folder_name,
#если она не существует.
#Функция os.makedirs() создает все промежуточные папки,
#если они отсутствуют в пути.
os.makedirs(folder_name)
# Функция для перемещения файла в папку
def move_file_to_folder(file, folder_name):
shutil.move(file, folder_name)
# Имя вашего скрипта
script_file_name = "kladmen.exe"
# Определение папок для различных типов файлов
folders = {
"Изображения": [".jpg", ".jpeg", ".png", ".gif"],
"Музыка": [".mp3", ".wav", ".flac", ".ogg"],
"Документы": [".doc", ".docx", ".pdf", ".txt"],
"Видео": [".mp4", ".avi", ".mov", ".mkv"],
"Установочные пакеты": [".exe", ".dll"],
"Мобильные пакеты": [".apk", ".apks"],
"Скрипты": [".py", ".pl"],
"Архивы": [".zip", ".rar", ".7z"],
"Таблицы": [".xlsx", ".xls", ".xlsm"],
"Презентации": [".pptx"],
"Торренты": [".torrent"]
# Добавьте другие типы файлов по аналогии
}
# Получаем список файлов в текущей директории
files = os.listdir()
# Добавляем папку "Другое" для остальных файлов
other_files_folder = "Другое"
# Перебираем файлы и перемещаем их в соответствующие папки
for file in files:
# Убеждаемся, что это файл, а не папка, и не является скриптом
if os.path.isfile(file) and file != script_file_name:
#Эта строка кода извлекает расширение файла file
#с помощью функции os.path.splitext()
#и сохраняет его в переменной file_extension.
file_extension = os.path.splitext(file)[1]
#Эта строка кода устанавливает переменную file_moved
#в значение False. Она будет использоваться позже
#для отслеживания того,
#был ли файл перемещен в какую-либо папку.
file_moved = False
#Это начало цикла for, который перебирает
#элементы словаря folders.
#В каждой итерации переменная folder_name
#будет содержать ключ (имя папки),
#а переменная extensions будет содержать значение
#(список расширений файлов для этой папки).
for folder_name, extensions in folders.items():
#Этот оператор условия проверяет,
#содержится ли расширение файла file в списке расширений (extensions)
#для текущей папки (folder_name).
#Если условие выполняется, то выполняются следующие строки кода.
if file_extension.lower() in extensions:
#Вызывается функция create_folder_if_not_exists(),
#которая создает папку с именем folder_name, если она еще не существует.
create_folder_if_not_exists(folder_name)
# Вызывается функция move_file_to_folder(),
#которая перемещает файл file в папку с именем folder_name.
move_file_to_folder(file, folder_name)
#Выводится сообщение о том, что файл file был перемещен в папку folder_name.
print(f"{file} переместился в папку {folder_name}")
#Устанавливается переменная file_moved в значение True,
#чтобы указать, что файл был перемещен.
file_moved = True
#Этот оператор прерывает цикл for,
#чтобы не продолжать перебирать остальные папки,
#после того как файл был успешно перемещен.
break
# Этот оператор условия проверяет, был ли файл перемещен в какую-либо папку.
#Если файл не был перемещен, то выполняются следующие строки кода.
if not file_moved:
#Вызывается функция create_folder_if_not_exists(),
#которая создает папку с именем other_files_folder, если она еще не существует.
create_folder_if_not_exists(other_files_folder)
#Вызывается функция move_file_to_folder(), которая перемещает файл file
#в папку с именем other_files_folder.
move_file_to_folder(file, other_files_folder)
print(f"{file} переместился в папку {folder_name}")
print("Перемещение файлов выполненно!")