0
0
PythonHow-ToBeginner · 3 min read

How to Freeze Pip Packages in Python: Save Your Dependencies

To freeze pip packages in Python, use the pip freeze command which lists all installed packages and their versions. You can save this list to a file by running pip freeze > requirements.txt, creating a snapshot of your current environment.
📐

Syntax

The basic syntax to freeze pip packages is:

  • pip freeze: Lists all installed packages with their versions.
  • pip freeze > requirements.txt: Saves the list to a file named requirements.txt.
bash
pip freeze
pip freeze > requirements.txt
💻

Example

This example shows how to freeze your current Python environment's packages into a requirements.txt file and then display its contents.

python
import os

# Freeze installed packages to requirements.txt
os.system('pip freeze > requirements.txt')

# Read and print the contents of requirements.txt
with open('requirements.txt', 'r') as file:
    content = file.read()
print(content)
Output
certifi==2023.5.7 charset-normalizer==3.1.0 idna==3.4 requests==2.31.0 urllib3==1.26.16
⚠️

Common Pitfalls

Common mistakes when freezing pip packages include:

  • Running pip freeze in the wrong environment, which captures unrelated packages.
  • Not using a virtual environment, causing global packages to be included.
  • Overwriting an existing requirements.txt without backing it up.

Always activate your project’s virtual environment before freezing packages to get accurate results.

bash
## Wrong way: freezing without activating virtual environment
# pip freeze > requirements.txt

## Right way: activate virtual environment first
# source venv/bin/activate  # On Windows use: venv\Scripts\activate
# pip freeze > requirements.txt
📊

Quick Reference

Tips for freezing pip packages:

  • Use pip freeze to list packages.
  • Redirect output to requirements.txt to save.
  • Activate your virtual environment before freezing.
  • Use pip install -r requirements.txt to install saved packages later.

Key Takeaways

Use pip freeze > requirements.txt to save your current packages and versions.
Always activate your virtual environment before freezing to capture only project-specific packages.
The requirements.txt file helps recreate the same environment later with pip install -r requirements.txt.
Avoid overwriting your requirements file without backup to prevent losing important dependency info.