Piton

A Python használata a fájlok tömörítéséhez

A Python használata a fájlok tömörítéséhez
Ha az adatok mindennap exponenciálisan nőnek, akkor aggodalma van azzal kapcsolatban, hogy miként lehet megőrizni az említett adatokat a tárolóeszközök túláradása nélkül. A fájlok tömörítésével sokkal kisebb fájlokat kapunk, amelyeket archívumnak nevezünk. Ezek az archívumok az összes adatot eredeti formájában tartalmazzák, de drámaian csökkentett méretben. Ez a folyamat egyszerűen elvégezhető úgy, hogy jobb egérgombbal kattint egy fájlra / fájlcsomóra, és kiválasztja az „Add to archive” opciót. Ugyanezt a folyamatot meg lehet csinálni a Pythonon keresztül is, és ezt itt fogjuk megvitatni.

A Python környezet előkészítése

A Python használatának megkezdéséhez meg kell győződnie arról, hogy helyesen van-e telepítve, és minden, ami a függőségeivel kapcsolatos, naprakész. Az első dolog, amit bármi más telepítése előtt meg kell tennie, írja be a következő parancsot:

sudo apt-get frissítés

Ez a parancs elvégzi a telepített csomagok frissítésellenőrzését, és új, a tárolókba felvett csomagokat keres. Miután a program sikeresen futott, itt az ideje ellenőrizni, hogy a python megfelelően lett-e telepítve. Ezt meg lehet erősíteni a következő parancs beírásával a terminál ablakában:

python3 -v

Ha minden a tervek szerint haladt, akkor kimenetként egy verziószámot kell látnia. Ha hiba nélkül jutott el ide, most folytathatja az IDE letöltését, hogy a python élmény sokkal jobb legyen. Azért, Jupyter jegyzetfüzetet fogunk használni. Ehhez a következő parancsot kell futtatnia:

sudo apt-get -y install ipython ipython notebook && pip install jupyter

Most már eléggé felkészült arra, hogy egyszerű Python programokat tudjon írni, amelyek tömöríteni tudnak .zip fájlokat, és azokat is kicsomagolja.

A Jupyter notebook indításához be kell írnia a következő parancsot a terminálba: jupyter notebook (Megjegyzés: Az alábbi képernyőképeken látható IDE felület kissé különbözik a szokásos Jupyter notebook-tól. Minden más ugyanúgy működik)

A parancs futtatása után megnyitja a Jupyter notebook felületét a webböngészőben, és onnan kezdheti el a kódolást egy új notebook fájl létrehozásával. Ha ez megtörtént, akkor minden akadály nélkül kódolni tudja az archiváló programokat.

A szükséges import

Most, hogy áttérünk a kódoló részre, kezdjük azzal, hogy először elvégezzük a szükséges importokat, amelyekre szükségünk lesz ennek a feladatnak a megvalósításához. Ha egyszerűen olyan programot fogunk készíteni, amely a zip fájlok elkészítésén kívül semmit sem tesz a meglévő fájlokból, akkor csak két modult kell importálnunk:

zipfile és os

A 'zipfile' modul eléggé magától értetődő. Nagyon könnyen használható funkciókat biztosít számunkra, amelyek lehetővé teszik a zip fájlok létrehozását, és könyvtárak, fájlok és alkönyvtárak hozzáadását az újonnan létrehozott zip fájlokhoz minimális erőfeszítéssel. A modul még sok más felhasználási lehetőséggel is rendelkezik, és ha meg akarja nézni valódi lehetőségeit, nyugodtan keresse fel a Google dokumentációját online.

Az 'os' modul lehetővé teszi számunkra, hogy a fájljainkkal javítsuk programjainkat. Lehetővé teszi számunkra a könyvtárak megtekintését és azok tartalmának a lehető legegyszerűbb módon történő felsorolását. Ha mindkét könyvtárat együtt használják, akkor könnyen létrehozhat néhány nagyon robusztus programot a tömörítési feladatok kezelésére.

A cipzár itt kezdődik

Amikor futtatja a noteszgépen az alábbi képen látható kódot, látni fogja, hogy egy zip fájl jött létre a könyvtárban, és mérete is jelentősen alacsonyabb, mint az eredeti fájl. Az általunk tárgyalt példa egyetlen fájlt tartalmazott.

Ha egy lépéssel tovább akarunk lépni, ahol könyvtárakat és több utat szeretnénk hozzáadni a zip fájlunkhoz, akkor a következő kódrészletet kell futtatnunk.

Ismét a szkript futtatása után egy új zip fájlt mutat be a könyvtárban, amelyben éppen tartózkodik, és mérete sokkal kisebb lesz, mint a tartalom együttes mérete.

A tömörített fájlok kibontása

Talán már sejtette, és ez igaz. Az általunk használt könyvtárakkal szinte minden aprócska feladat, amelyre gondolhatunk, többnyire gondosan egy soros megoldásokká lettek kidolgozva, és nagyon hatékonyak. Ugyanez a helyzet a fájlok tartalmának kibontásával is. Ugyanezt a zipfile modult fogja használni itt, és miután hivatkoztunk a fájl elérési útjára, egyszerűen meghívunk egy függvényt extractall amely az argumentumaiban azt az utat fogja megtenni, ahová a zip fájlt szeretnénk kibontani.

Miért válassza ezt programozni?

Nos, erre a kérdésre nagyon egyszerű a válasz; automatizálás. Ha nagy mennyiségű adattal dolgozik, akkor nyilvánvalóan szüksége lesz arra, hogy lerövidítse a fizikai munkát. 2019-ben, ha valamit automatizálni lehet, azt automatizálni kell. Egyszerűen nincs értelme olyan redundáns feladatot végezni, amelyet egy nagyon költséghatékony megoldás sokkal hatékonyabban végezhet el. Az az energia, amelyet a zip fájlok készítése pazarolna el, különben felhasználható valami produktív művelethez.

Az AutoKey használata a Linux játékok automatizálásához
Az AutoKey egy asztali automatizáló segédprogram Linux és X11 rendszerekhez, Python 3, GTK és Qt programozással. A parancsfájlok és a MACRO funkcióina...
Az FPS-számláló megjelenítése a Linux-játékokban
A Linux játék komoly lendületet kapott, amikor a Valve 2012-ben bejelentette a Linux támogatását a Steam kliensnek és játékaiknak. Azóta sok AAA és in...
Sid Meier Civilization VI letöltése és lejátszása Linuxon
Bevezetés a játékba A Civilization 6 egy modern felvétel a Age of Empires játékok sorozatában bevezetett klasszikus koncepcióra. Az ötlet meglehetősen...