Python Zip File Tutorial with Examples

The zip is a popular compression format and algorithm used to compress files and folders. Python provides the zipfile module in order to work with zipped files. A zip file contains single or more files and folders in a compressed way with lossless compression.

zipfile Module

The zip file operations are provided with the zipfile module in Python. The zipfile module provides different methods and attributes about zip files and related objects. In order to work with zip files, the zipfile module should be imported like below.

import zipfile

Extract Single File

Single file from the zip file can be extracted by using the open() method which opens the file inside the zip file.

import zipfile

zf = zipfile.ZipFile("my.zip")

f = zf.open("cities.txt")

print(f.name)

f.read()

Extract Zip File

The zipfile module provides the extractall() method which can be used to extract all files and folders. In the following example, we extract the contents of the my.zip in the current working directory. By default, the extractall() method overwrites existing files.

import zipfile

zf = zipfile.ZipFile("my.zip")

zf.extractall()

List Zip File Contents As List

A zip file may contain single or multiple files and folders. These files and folders can be listed as a list type by using the namelist() method like below.

import zipfile

zf = zipfile.ZipFile("my.zip")

zf.namelist()
['cities.txt', 'MyFile.csv', 'numbers.txt']

List Zip File Contents and Information

A zip file may contain multiple files and folders. These files and folders have different information and attribute like filename, compress_type, filemode, file_size, compress_size, etc.

import zipfile

zf = zipfile.ZipFile("my.zip")

zf.infolist()

Leave a Comment