Python

Використання Python для архівування файлів

Використання Python для архівування файлів
Оскільки дані щодня збільшуються в геометричній прогресії, ваше занепокоєння щодо того, як зберегти згадані дані, не переповнюючи ваші пристрої зберігання даних, є слушним. Стискання файлів дає набагато менші файли, відомі як архіви. Ці архіви містять усі ваші дані в оригінальній формі, але з різко зменшеними розмірами. Цей процес можна зробити, просто клацнувши правою кнопкою миші файл / купу файлів та вибравши опцію «додати в архів». Той самий процес також можна зробити за допомогою Python, і саме про це ми будемо обговорювати звідси.

Підготовка середовища Python

Щоб почати використовувати Python, потрібно переконатися, що він правильно встановлений, і все, що пов’язано з його залежностями, оновлено. Одне з перших дій, які слід зробити перед інсталяцією чогось іншого, - це ввести таку команду:

sudo apt-get update

Ця команда виконує перевірку оновлення для будь-якого з встановлених пакунків та шукає нові пакети, які були додані до сховищ. Після успішного запуску програми настав час перевірити, чи правильно встановлений python. Це можна підтвердити, набравши у вікні терміналу таку команду:

python3 -v

Якщо все пішло за планом, ви побачите номер версії як результат. Якщо ви дійшли до цього пункту без помилок, тепер ви можете перейти до завантаження IDE, щоб покращити роботу python. Для того, ми будемо використовувати ноутбук Юпітер. Для цього вам потрібно виконати таку команду:

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

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

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

Після запуску команди вона відкриє інтерфейс блокнота Jupyter у вашому веб-браузері, і звідти ви можете розпочати кодування, створивши новий файл блокнота. Після цього ви зможете без перешкод кодувати програми архівування.

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

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

zipfile та os

Модуль 'zipfile' досить зрозумілий. Він надає нам дуже прості у використанні функції, які дозволяють створювати zip-файли та додавати каталоги, файли та підкаталоги до новостворених zip-файлів з мінімальними зусиллями. Модуль також має набагато більше застосувань, і якщо ви хочете перевірити його справжній потенціал, сміливо гугніть його документацію в Інтернеті.

Модуль 'os' дозволяє нам мати справу з шляхом до файлів у наших програмах. Це дозволяє переглядати каталоги та перераховувати їх вміст найпростішими способами. Коли обидві ці бібліотеки використовуються разом, ви зможете легко створити кілька дуже надійних програм для обробки завдань стиснення для вас.

Тут починається застібка

Запустивши код на малюнку нижче у своєму блокноті, ви побачите, що у каталозі створено zip-файл, і його розмір також значно нижчий від вихідного файлу. Приклад, який ми обговорили, включав лише один файл.

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

Знову ж таки, після запуску сценарію, вам буде представлено новий zip-файл у каталозі, в якому ви зараз перебуваєте, і його розмір буде набагато меншим, ніж загальний розмір його вмісту.

Розпакування стиснених файлів

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

Чому обирають програмувати це?

Ну, відповідь на це питання дуже проста; автоматизація. Якщо ви працюєте з великими обсягами даних, вам, очевидно, знадобиться спосіб скоротити фізичну працю. У 2019 році, якщо щось можна автоматизувати, це слід автоматизувати. Просто немає сенсу виконувати надлишкове завдання, яке можна зробити набагато ефективніше за допомогою дуже економічного рішення. Енергія, яка витрачається на створення zip-файлів, в іншому випадку може бути використана для виконання чогось продуктивного.

Як показати накладання екранного меню в повноекранному додатку та іграх для Linux
Гра у повноекранні ігри або використання додатків у повноекранному повноекранному режимі може відключити від відповідної системної інформації, видимої...
Топ 5 карт для захоплення ігор
Ми всі бачили і любили потокові ігри на YouTube. PewDiePie, Jakesepticye та Markiplier - лише деякі з найкращих геймерів, які заробили мільйони, заван...
Як розробити гру на Linux
Десять років тому не так багато користувачів Linux передбачали, що їх улюблена операційна система колись стане популярною ігровою платформою для комер...