<MyRusakov.ru />

Программирование на C++ с Нуля до Гуру

Программирование на C++ с Нуля до Гуру

Данный курс научит Вас программировать на языке C++, который, несмотря на свой почтенный возраст, необычайно сильно востребован. Курс состоит из 6 разделов, посмотрев которые и выполнив все упражнения, Вы с нуля освоите этот язык и сможете создавать самые разные проекты любой сложности на C++.

Для закрепления материала из уроков к ним идёт множество упражнений.

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

Также вместе с курсов Вы получаете Бонус "Программирование на C++ в Unreal Engine", в котором Вы научитесь создавать игры на C++ с использованием этого движка.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Зачем Вы изучаете программирование/создание сайтов?

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

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

Организация файлов на компьютере может быть утомительной задачей, особенно когда это делается вручную. Некоторые папки (например, папка "Загрузки") на компьютере часто забиты так, что мы не всегда можем найти то что нам нужно. В данной статье Вы узнаете как с помощью языка Python и его встроенных средств организовать размещение файлов по папкам в соответствии с их расширениями.

И так, давайте начнем. Как мы уже сказали выше, нам не понадобится для установки ничего, кроме стандартной библиотеки Python 3. Импортируем модули:


import os
import glob
import shutil

Мы будем использовать функцию shutil.move() из модуля shutil для перемещения файлов, и нам также понадобится модуль globe, чтобы получить список совпадающих файлов с помощью регулярного выражения. Мы также используем модуль os для обработки имен файлов.

Поскольку мы собираемся упорядочивать файлы по расширению, имеет смысл размещать файлы одного типа (например, mp3, wav) в одной папке (например, "аудио"). Ниже словарь Python сопоставляет каждое расширение с типом.:



extensions = {
    "jpg": "изображения",
    "png": "изображения",
    "ico": "изображения",
    "gif": "изображения",
    "svg": "изображения",
    "sql": "SQL_",
    "exe": "Программы",
    "msi": "Программы",
    "pdf": "pdf",
    "xlsx": "Эксель",
    "csv": "Эксель",
    "rar": "Архивы",
    "zip": "Архивы",
    "gz": "Архивы",
    "tar": "Архивы",
    "docx": "ВОРД",
    "txt": "Текст",
    "py": "python",
    "pptx": "powerpoint",
    "ppt": "powerpoint",
    "mp3": "аудио",
    "wav": "аудио",
    "mp4": "видео",
    "m3u8": "видео",
    "webm": "видео",
    "ts": "видео",
    "json": "json",
    "css": "web",
    "js": "web",
    "html": "web",
    "apk": "apk",
    "sqlite3": "sqlite3",
}


Так, файлы mp4 и m3u8 будут помещены в папку видео и так далее. Данный список не окончателен и может быть расширен.

Перейдем к следующему фрагменту кода.


    # путь к целевой папке
    path = r"С:\Downloads"
    verbose = 1
    for extension, folder_name in extensions.items():
        # найдем все файлы подходящие по расширению 
        files = glob.glob(os.path.join(path, f"*.{extension}"))
        print(f"[*] Найдено {len(files)} файлов с {extension} расширением")
        if not os.path.isdir(os.path.join(path, folder_name)) and files:
            # создание новой директории
            print(f"[+] Создание папки {folder_name}")
            os.mkdir(os.path.join(path, folder_name))
        for file in files:
            # Для каждого файла с соответствующим расширением помещаем его в нужную папку
            basename = os.path.basename(file)
            dst = os.path.join(path, folder_name, basename)
            if verbose:
                print(f"[*] перемещение  {file} в {dst}")
            shutil.move(file, dst)


Мы перебираем наш словарь, который сопоставляет каждое расширение с типом файла, получаем список файлов каждого расширения и перемещаем их в соответствующую папку. Мы также создаем папку с помощью функции os.mkdir(), если она ранее не существовала.

Переменная path - это путь к папке, которую вы хотите упорядочить, вы можете использовать модули sys или argparse для передачи пути к папке через cmd.

Запустим скрипт.


>>>python ext_sep.py


'''
вывод:
[+] Найдено 0 файлов с расширением .jpg
[+] Найдено 2 файлов с расширением .png
[+] Создаем папки изображения
[+] Найдено 0 файлов с расширением .ico
[+] Найдено 0 файлов с расширением .gif
'''


Результат:


Изображение


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

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.