Python

Использование Python для архивирования файлов

Использование Python для архивирования файлов
Поскольку размер данных растет в геометрической прогрессии с каждым днем, ваша забота о том, как сохранить эти данные, не переполняя ваши устройства хранения, является допустимой. При сжатии файлов получаются файлы гораздо меньшего размера, известные как архивы. Эти архивы содержат все ваши данные в их первоначальном виде, но значительно уменьшенного размера. Этот процесс можно выполнить, просто щелкнув правой кнопкой мыши файл / группу файлов и выбрав опцию «добавить в архив». Тот же процесс может быть выполнен через Python, и это то, что мы будем обсуждать здесь.

Подготовка среды Python

Чтобы начать использовать Python, вам необходимо убедиться, что он правильно установлен и все, что связано с его зависимостями, обновлено. Первое, что вам следует сделать перед установкой чего-либо еще, - это ввести следующую команду:

sudo apt-get update

Эта команда выполняет проверку обновлений для любого из установленных пакетов и ищет новые пакеты, которые были добавлены в репозитории. После того, как эта программа успешно запустилась, пришло время проверить, правильно ли установлен python. Это можно подтвердить, введя следующую команду в окне терминала:

python3 -v

Если все прошло по плану, вы должны увидеть номер версии в качестве вывода. Если вы дошли до этого момента без каких-либо ошибок, теперь вы можете перейти к загрузке IDE, чтобы сделать работу с Python намного лучше. Для этого, мы будем использовать блокнот Jupyter. Для этого нужно выполнить следующую команду:

sudo apt-get -y установить ipython ipython notebook && pip install jupyter

Теперь вы достаточно подготовлены для написания простых программ Python, которые могут .zip-файлы, а также распаковать их.

Чтобы запустить блокнот Jupyter, вам необходимо ввести в терминале следующую команду: jupyter notebook (Примечание: интерфейс IDE, который вы увидите на скриншотах ниже, будет немного отличаться от вашего стандартного блокнота Jupyter. В остальном все работает так же)

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

Необходимый импорт

Теперь, когда мы перешли к части кодирования, давайте начнем с того, что сначала выполним необходимый импорт, который нам понадобится для выполнения этой задачи. Если мы просто собираемся создать программу, которая ничего не делает, кроме создания zip-файлов из существующих файлов, то нам просто нужно импортировать два модуля:

zip-файл и ОС

Модуль 'zipfile' довольно понятен. Он предоставляет нам очень простые в использовании функции, которые позволяют нам создавать zip-файлы и добавлять каталоги, файлы и подкаталоги к вновь созданным zip-файлам с минимальными усилиями. У модуля также есть много других вариантов использования, и если вы хотите проверить его истинный потенциал, не стесняйтесь гуглить его документацию в Интернете.

Модуль 'os' позволяет нам иметь дело с путями к файлам в наших программах. Это позволяет нам просматривать каталоги и перечислять их содержимое простейшими способами. Когда обе эти библиотеки используются вместе, вы сможете легко создать несколько очень надежных программ для выполнения задач сжатия за вас.

Архивирование начинается здесь

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

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

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

Распаковка сжатых файлов

Вы, наверное, уже догадались, и это правда. С помощью библиотек, которые мы используем, почти все тривиальные задачи, которые мы можем придумать, по большей части тщательно объединены в однострочные решения, и они очень эффективны. То же самое и с распаковкой содержимого файлов. Здесь будет использоваться тот же модуль zipfile, и после ссылки на путь к файлу мы просто вызовем функцию с именем извлечь все который будет принимать в своих аргументах путь, по которому мы хотим распаковать zip-файл в.

Почему выбирают программировать это?

Что ж, ответ на этот вопрос очень прост; автоматизация. Если вы работаете с большими объемами данных, вам, очевидно, понадобится способ сократить ручной труд. В 2019 году, если что-то можно автоматизировать, надо автоматизировать. Просто нет смысла выполнять избыточную задачу, которую можно было бы сделать гораздо более эффективно с помощью очень экономичного решения. Энергия, которая была бы потрачена на создание zip-файлов, в противном случае может быть использована для чего-то продуктивного.

5 лучших аркад для Linux
В настоящее время компьютеры - это серьезные машины, используемые для игр. Если вы не можете получить новый рекорд, вы поймете, о чем я. В этом посте ...
Битва за Веснот 1.13.6 Выпущена разработка
Битва за Веснот 1.13.6, выпущенная в прошлом месяце, является шестой разработкой в ​​1.13.x и содержит ряд улучшений, в первую очередь пользовательско...
Как установить League Of Legends на Ubuntu 14.04
Если вы поклонник League of Legends, то это возможность для вас протестировать League of Legends. Обратите внимание, что LOL поддерживается в PlayOnLi...