Python での Gzip 解凍

Rana Hasnain Khan 2023年10月10日
  1. Python での Gzip 解凍
  2. Python のZlibライブラリ
Python での Gzip 解凍

Python での gzip 解凍を紹介します。 また、gzip 解凍を使用して圧縮されたコンテンツを解凍する方法も紹介します。

Python での Gzip 解凍

多くのライブラリは、Python で圧縮および解凍の目的で構築されていますが、Gzip ライブラリを紹介します。 人気のデータ圧縮ツールです。

gzip を使用して、人間が読み取ることができず、圧縮しにくい特殊な形式でデータをエンコードすることにより、ファイルのサイズを縮小できます。 gzip.decompress() メソッドを使用して、文字列の圧縮されたバイトを元の文字列に解凍できます。

gzip には 2 種類のデータ圧縮方法があります。 両方の方法について詳しく説明します。

最初の方法は、逆圧縮として知られています。 これは、データのサイズを縮小するために使用できる特殊なタイプのハフマン コーディングです。

もう 1つの方法は、例で使用する gzip 解凍です。 文字列の圧縮されたバイトを元の文字列に解凍します。

gzip 解凍方法の構文を以下に示します。

# python
gzip.decompress(stringToDecompress)

それでは、例でこの関数を使用してみましょう。 まず、次のコマンドを使用してライブラリをインストールする必要があります。

# python
pip install gzip

Gzip ライブラリがインストールされたら、次のコード行を使用してインポートできます。

# python
import gzip

以下に示すように、例から始めましょう。

# python
import gzip

value = b"This string is encoded in Python."

value = gzip.compress(value)

print("compressed value is: ", value)

compressed = gzip.decompress(value)

print("Decompressed value is: ", compressed)

出力:

Python の例 1 の gzip 圧縮と解凍

上記の例は、gzip を使用して文字列を圧縮すると、読み取り不可能な形式にエンコードされることを示しています。 しかし、gzip 解凍を使用すると、デコードされ、人間が読める形式に変換されます。

Python のZlibライブラリ

次に、圧縮と解凍にも使用できる別のライブラリ Zlib について説明します。 Zlib ライブラリは、Python の最も一般的で便利な圧縮ライブラリの 1つです。

Zlib は、いくつかの優れた使いやすい圧縮および解凍アルゴリズム関数を提供します。 このライブラリをインストールして、サンプルで使用しましょう。

次のコマンドを使用して、ライブラリを簡単にインストールできます。

pip install zlib

Zlib ライブラリがインストールされたら、次のコード行を使用してインポートできます。

# python
import zlib

Zlib ライブラリは、圧縮と解凍のためのいくつかの関数を提供します。 このチュートリアルでは、エンコードに gzip() を、デコードに zlib.decompress() を使用します。

以下に示すように、このライブラリを使用する例を見てみましょう。

# python
import zlib

value = b"This string is encoded in Python."

Compressed = zlib.compress(value)

print("Compressed String is ")

print(Compressed)

print("\nDecompressed String is")

print(zlib.decompress(Compressed))

出力:

Python の例 1 での zlib の圧縮と解凍

上記の例は、文字列の圧縮と解凍に使用できる複数のライブラリを示しています。

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn