1 min read

Python Zlib Module

The zlib module provides access to the zlib library for data compression and decompression. It is compatible with the gzip file format.

Importing the Module

import zlib

Compression

zlib.compress()

Compresses the bytes in data.

import zlib

data = b'Hello, world! Hello, world! Hello, world!'
compressed_data = zlib.compress(data)

print(f"Original size: {len(data)}")
print(f"Compressed size: {len(compressed_data)}")

Compression Levels

You can specify a compression level from 0 (no compression) to 9 (best compression). The default is 6.

compressed_data = zlib.compress(data, level=9)

Decompression

zlib.decompress()

Decompresses the bytes in data.

decompressed_data = zlib.decompress(compressed_data)
print(decompressed_data)
# Output: b'Hello, world! Hello, world! Hello, world!'

Checksums

The zlib module can calculate checksums (CRC32 and Adler32) to verify data integrity.

zlib.crc32()

Computes a CRC (Cyclic Redundancy Check) checksum of data.

import zlib

data = b'Hello, world!'
checksum = zlib.crc32(data)
print(f"CRC32: {checksum}")

zlib.adler32()

Computes an Adler-32 checksum of data.

import zlib

data = b'Hello, world!'
checksum = zlib.adler32(data)
print(f"Adler32: {checksum}")

programming/python/python