Website-Suche

Python Gzip Dekompressionsfunktion


In diesem Artikel werden wir die Funktion gzip.decompress() im Detail mit zahlreichen Beispielen untersuchen.

Was ist GZIP?

GZIP ist ein „Dateiformat“ und eine Softwareanwendung, die zum Komprimieren und Dekomprimieren von Dateien verwendet wird.

Es basiert auf dem DEFLATE-Algorithmus, der eine Fusion aus LZ77 und Huffman-Codierung ist. Die GZIP-Kompression funktioniert, indem sie die zu komprimierenden Daten analysiert und eine Menge von Huffman-Codes erstellt, die die am häufigsten vorkommenden Datenmuster repräsentieren. Diese Codes werden verwendet, um die Daten zu kodieren, was zu einer komprimierten Datei führt, die kleiner ist als die ursprünglichen Daten.

GZIP-Kompression wird verwendet, um die Größe von Dateien für Speicher- und Übertragungszwecke zu verringern. Sie ist besonders nützlich beim Umgang mit großen Dateien, wie z.B. Multimedia-Dateien oder Datensätzen.

Python „gzip.decompress()“ Funktion

Die „gzip.decompress()“-Funktion wird verwendet, um die Daten zu dekomprimieren, die mit dem „GZIP“-Algorithmus komprimiert wurden. Diese Funktion nimmt eine komprimierte Datenzeichenfolge als Argument und gibt die ursprünglichen unkomprimierten Daten zurück.

Syntax

gzip.decompress(data, wbits=MAX_WBITS, bufsize=DEFAULT_BUFFER_SIZE)

In der obigen Syntax nimmt die “gzip.decompress() ” Funktion die folgenden Parameter entgegen:

  • Der „Daten“-Parameter ist eine Zeichenkette, die die komprimierten Daten darstellt, die einer Dekompression bedürfen.
  • Der “wbits”-Parameter bezieht sich auf eine Ganzzahl, die die Anzahl der Bits angibt, die für die Fenstergröße verwendet werden sollen. Der Standardwert ist “MAX_WBITS”, was einer Fenstergröße von “32” KB entspricht.
  • Die „bufsize“ entspricht einer Ganzzahl, die die Größe des Puffers angibt, der für die Dekompression verwendet wird. Der Standardwert ist „DEFAULT_BUFFER_SIZE“, was „16“ KB entspricht.

Lass es uns durch das folgende Beispiel verstehen:

Beispiel 1: Dekomprimieren eines GZIP-komprimierten Strings
Hier ist ein Beispiel für die Verwendung der gzip.decompress()-Funktion, um die GZIP-Kompression zu entfernen/dekomprimieren:

import gzip
data = b'Hello and Welcome to Python Guide'
data = gzip.compress(data)
print(gzip.decompress(data))

In den obigen Codezeilen:

  • Das „gzip“-Modul wird importiert und eine Variable, die den GZIP-komprimierten Datenstring darstellt, wird initialisiert.
  • Die „gzip.decompress()“-Funktion nimmt die komprimierte Datenzeichenfolge als Argument und gibt die ursprünglichen unkomprimierten Daten als Byte-Zeichenfolge zurück.

Ausgabe

Hier wurde die Byte-Zeichenfolge aus der komprimierten Datenzeichenfolge erstellt.

Beispiel 2: Dekomprimieren des komprimierten GZIP-Byte-Objekts
Lassen Sie uns den folgenden Beispielcode betrachten:

import gzip
data = b'PythonGuide@12345678'
data = gzip.compress(data)
print(gzip.decompress(data))

Im obigen Code:

  • Das „gzip“-Modul wird importiert und die Eingabebyte-Daten werden im Programm initialisiert.
  • Die „gzip.compress()“-Funktion wird angewendet, um das Bytes-Objekt zu komprimieren.
  • Schließlich wird die „gzip.decompress()“-Funktion verwendet, um die komprimierten Daten zu dekomprimieren.

Ausgabe

Im obigen Output wurde der Byte-String aus dem komprimierten Daten-String erstellt.

Beispiel 3: Entpacken der komprimierten GZIP-Datei
Betrachten Sie das folgende Beispiel:

import gzip
with gzip.open('file_1.gz', 'rb') as f:

    decompressed_data = gzip.decompress(f.read()) print(decompressed_data)

Im obigen Code-Snippet:

  • Das “gzip” Modul wird importiert.
  • Danach wird die Funktion gzip.open() verwendet, um eine Datei im Binärmodus mit dem ‚rb‘-Flag zu öffnen.
  • Der Inhalt dieser Datei wird dann mit der “read() ”-Methode gelesen.
  • Die “gzip.decompress()”-Funktion des gzip-Moduls wird verwendet, um die Daten zu dekomprimieren.

Ausgabe

Im obigen Output wurde die gzip-komprimierte Datei über die Methode "gzip.decompress()" dekomprimiert.

Fazit

Die „gzip.decompress()“-Funktion ist ein leistungsfähiges Werkzeug zum Dekomprimieren von Daten, die mit dem „GZIP“-Algorithmus komprimiert wurden. Es ist eine wesentliche Funktion für jeden Python-Entwickler, um mit komprimierten Datendateien zu arbeiten. Diese Funktion nimmt eine komprimierte Datenzeichenfolge als Argument und gibt die ursprünglichen, nicht komprimierten Daten zurück. Dieser Python-Beitrag bietet eine umfassende Anleitung zur „gzip.decompress()“-Funktion mit zahlreichen Beispielen.