So komprimieren und dekomprimieren Sie Daten in Python

Heute sehen wir ein Tutorial, das sich mit der Komprimierung und Dekomprimierung von Daten in Python befasst , eine sehr einfache Aufgabe, da wir bestimmte Module haben, mit denen wir diese Aufgabe der Datenkomprimierung durchführen können. Die Bibliotheken sind: zlib , gzip , bz2 , zipfile und tarfile .

Während des Tutorials werden wir Beispiele einiger Bibliotheken sehen, um zu lernen, wie man es benutzt. Es ist der beste Weg, um zu verstehen, wie es funktioniert.

Hinweis
Es wird Version 3 von Python verwenden.

Beginnen wir mit den Beispielen. Alle von ihnen werden einfach und leicht zu verstehen sein.

1. Zlib-Modul

Sehen wir uns ein paar Beispiele für diese Bibliothek an. Beide werden, wie bereits erwähnt, einfach sein.

Beispiel 1

Wir haben den folgenden Code, wie Sie kurz beobachten können:

 zlib als zl importieren line = b "Dies ist nur ein Test für das Tutorial, das in TechnoWikis veröffentlicht wird" line_compress = zl.compress (line) print ("Unkomprimierte Größe% d"% len (Zeile)) print ("Komprimierte Größe% d"% len (line_compress)) 

Wir komprimieren die ursprüngliche Zeile und zeigen, was sie belegt, und erhalten die folgende Ausgabe:

Beispiel-Zlib-1.jpg

Lassen Sie uns nun im folgenden Beispiel sehen, wie Sie dekomprimieren.

Beispiel 2

Im folgenden Code komprimieren wir eine Zeile, zeigen sie komprimiert an und entpacken sie, um sie anzuzeigen.

 zlib als zl importieren line = b "Testen von Python zlib" line_compress = zl.compress (line) print (line_compress) line_decompress = zl.decompress (line_compress) print (line_decompress) print (line_decompress.decode ("utf-8")) 

Die letzte Zeile des Codes wird verwendet, um von Bytes zu Zeichenfolge zu wechseln (bei der Dekodierung wird utf-8 verwendet), da die vorletzte Zeile am Anfang ein b anzeigt. Die Ausgabe des Programms ist wie folgt:

See also  Windows 7 - Erweiterte Tipps 8

Beispiel-Zlib-2.jpg

Wir gehen jetzt zu einem anderen Buchladen, da es gzip ist.

2. Gzip-Modul

Die oben gezeigten Beispiele gelten für diese Bibliothek. Sehen wir uns Beispiel 1 genau wie das vorherige an und ändern nur die Bibliothek.

Beispiel 1

Der Code, den wir haben, ist der folgende, der gleiche wie der vorherige, der zlib durch gzip ändert:

 gzip importieren line = b "Dies ist nur ein Test für das Tutorial, das in TechnoWikis veröffentlicht wird" line_compress = gzip.compress (line) print ("Unkomprimierte Größe% d"% len (Zeile)) print ("Komprimierte Größe% d"% len (line_compress)) 

Wenn wir ausführen, haben wir die folgende Ausgabe:

Beispiel-gzip-1.jpg

Wiegen Sie mehr Komprimierung als die, die nicht komprimiert ist. Wenn wir den Text für einen größeren ändern und ausführen:

Beispiel-gzip-1-2.jpg

Wenn Sie nun die Größe verbessert haben, aber zlib weiterhin besser komprimieren, legen Sie ein Capture ab. Die erste Ausführung verwendet zlib und die zweite gzip.

Vergleich-gzip-zlib.jpg

Gehen wir zum folgenden Beispiel, das das letzte sein wird.

Beispiel 2

Nun werden wir aus einer Datei schreiben und lesen, der Code ist der folgende:

 gzip importieren fw = gzip.open ('test.txt.gz', 'wb') fw.write (b "Testen von gzip") fw.close () fr = gzip.open ('test.txt.gz', 'rb') print (fr.read (). decode ("utf-8")) fr.close () 

Sie können verstehen, dass wir mögliche Ausnahmen, die auftreten können, nicht behandeln. Dies wurde weggelassen, damit das Beispiel kürzer und direkter ist. Wenn wir den Code ausführen, erhalten wir folgende Ausgabe:

Beispiel-gzip-2.jpg

Wir haben einige Beispiele für die Verwendung von zlib- und gzip-Bibliotheken gesehen. Sie können die offizielle Dokumentation von Python lesen, um diese und die oben genannten Module besser zu verstehen und zu sehen. Und wenn Sie interessiert sind, verlassen wir den Link zu einem anderen Tutorial über Python: Serialisieren und Deserialisieren .

See also  Umgang mit Bitcoin Core

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *