Python

Python gebruiken om bestanden te zippen

Python gebruiken om bestanden te zippen
Met gegevens die elke dag exponentieel in omvang toenemen, is uw bezorgdheid over hoe u de genoemde gegevens kunt bewaren zonder uw opslagapparaten overvol te maken terecht. Het comprimeren van de bestanden levert veel kleinere bestanden op, ook wel archieven genoemd. Die archieven bevatten al uw gegevens in de oorspronkelijke vorm, maar met drastisch verkleinde formaten. Dit proces kan eenvoudig worden gedaan door met de rechtermuisknop op een bestand/een heleboel bestanden te klikken en de optie 'toevoegen aan archief' te selecteren. Hetzelfde proces kan ook worden gedaan via Python, en dat is wat we vanaf hier zullen bespreken.

De Python-omgeving voorbereiden

Om Python te gaan gebruiken, moet je ervoor zorgen dat je het correct hebt geïnstalleerd en dat alles met betrekking tot de afhankelijkheden up-to-date is. Een van de eerste dingen die u moet doen voordat u iets anders installeert, is door de volgende opdracht in te voeren:

sudo apt-get update

Deze opdracht voert een updatecontrole uit voor alle pakketten die zijn geïnstalleerd en zoekt naar nieuwe pakketten die aan de repositories zijn toegevoegd. Zodra dat programma succesvol is uitgevoerd, is het nu tijd om te controleren of python correct is geïnstalleerd. Dat kan worden bevestigd door de volgende opdracht in het terminalvenster in te typen:

python3 -v

Als alles volgens plan is verlopen, zou je een versienummer als uitvoer moeten zien. Als je zonder enige fout op dit punt bent gekomen, kun je nu doorgaan met het downloaden van een IDE om de python-ervaring veel beter te maken. Daarom, we zullen Jupyter-notebook gebruiken. Hiervoor moet je de volgende opdracht uitvoeren:

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

U bent nu voldoende voorbereid om eenvoudige Python-programma's te schrijven die gecomprimeerde kunnen maken .zip-bestanden en pak ze ook uit.

Om Jupyter-notebook te starten, moet u de volgende opdracht in de terminal typen: jupyter-notebook (Opmerking: de IDE-interface die u in de onderstaande schermafbeeldingen ziet, zal een beetje anders zijn dan uw standaard Jupyter-notebook. Al het andere werkt hetzelfde)

Wanneer de opdracht is uitgevoerd, wordt de Jupyter-notebookinterface in uw webbrowser geopend en van daaruit kunt u beginnen met coderen door een nieuw notebookbestand te maken. Als dat is gebeurd, kunt u nu zonder obstakels uw archiveringsprogramma's coderen.

De nodige invoer

Nu we zijn overgegaan op het coderingsgedeelte, laten we beginnen met eerst de nodige imports uit te voeren die we nodig hebben om deze taak te laten gebeuren. Als we gewoon een programma gaan maken dat niets anders doet dan zip-bestanden maken van bestaande bestanden, dan hoeven we alleen maar twee modules te importeren:

zipfile en os

De 'zipfile'-module spreekt voor zich. Het biedt ons zeer gebruiksvriendelijke functies waarmee we met minimale inspanning zip-bestanden kunnen maken en mappen, bestanden en submappen aan de nieuw gemaakte zip-bestanden kunnen toevoegen. De module heeft ook veel meer toepassingen beschikbaar, en als u het ware potentieel wilt bekijken, kunt u de documentatie online googlen.

Met de 'os'-module kunnen we omgaan met bestandspaden in onze programma's. Het stelt ons in staat om mappen te bekijken en hun inhoud op de eenvoudigste manieren te vermelden. Wanneer beide bibliotheken samen worden gebruikt, kunt u eenvoudig een aantal zeer robuuste programma's maken om de compressietaken voor u uit te voeren.

Zippen begint hier

Wanneer u de code in de onderstaande afbeelding in uw notebook uitvoert, ziet u dat er een zip-bestand is gemaakt in de map en dat de grootte ook aanzienlijk laag is ten opzichte van het originele bestand. Het voorbeeld dat we bespraken, betrof slechts een enkel bestand.

Als we een stap verder willen gaan waar we mappen en meerdere paden aan ons zipbestand willen toevoegen, moeten we het volgende codefragment uitvoeren.

Nogmaals, na het uitvoeren van het script, krijgt u een nieuw zip-bestand te zien in de map waarin u zich momenteel bevindt, en de grootte ervan zal veel kleiner zijn dan de gecombineerde grootte van de inhoud.

De gecomprimeerde bestanden uitpakken

Je raadt het misschien al, en het is waar. Met de bibliotheken die we gebruiken, zijn bijna alle triviale taken die we kunnen bedenken, grotendeels zorgvuldig verwerkt in éénregeloplossingen en ze zijn zeer efficiënt. Hetzelfde geldt voor het uitpakken van de inhoud van de bestanden. Dezelfde zipfile-module zal hier worden gebruikt en na verwijzing naar het pad naar het bestand, zullen we eenvoudig een functie aanroepen met de naam extraheren die in zijn argumenten het pad zal nemen waar we het zipbestand naar willen decomprimeren.

Waarom ervoor kiezen om dit te programmeren?

Welnu, het antwoord op deze vraag is heel eenvoudig; automatisering. Als je met grote hoeveelheden data werkt, heb je natuurlijk een manier nodig om het handmatige werk te verkorten. Als iets in 2019 kan worden geautomatiseerd, moet het ook worden geautomatiseerd. Het heeft gewoon geen zin om een ​​overbodige taak uit te voeren die veel efficiënter kan worden gedaan door een zeer kosteneffectieve oplossing. De energie die zou worden verspild aan het maken van zip-bestanden, kan anders worden gebruikt om iets productiefs te doen.

Linkermuisknop werkt niet op Windows 10
Als u een speciale muis gebruikt met uw laptop of desktopcomputer, maar de linkermuisknop werkt niet not op Windows 10/8/7 om wat voor reden dan ook, ...
Cursor springt of beweegt willekeurig tijdens het typen in Windows 10
Als u merkt dat uw muiscursor vanzelf springt of beweegt, automatisch, willekeurig tijdens het typen op een Windows-laptop of -computer, dan kunnen en...
De scrollrichting van de muis en touchpads omkeren in Windows 10
Muis en Touchpads maken computergebruik niet alleen eenvoudig, maar ook efficiënter en minder tijdrovend. We kunnen ons een leven zonder deze apparate...