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에는 두 가지 유형의 데이터 압축 방법이 있습니다. 두 가지 방법에 대해 자세히 설명하겠습니다.

첫 번째 방법은 역 압축으로 알려져 있습니다. 데이터 크기를 줄이는 데 사용할 수 있는 특수 유형의 Huffman 코딩입니다.

다른 방법은 예제에서 사용할 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의 가장 일반적이고 유용한 압축 라이브러리 중 하나입니다.

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