Skip to content

Python Virtual Environments

Each Python project may need different package versions. Virtual environments isolate dependencies per project.

Terminal window
python -m venv .venv
Terminal window
# Linux/macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activate
Terminal window
pip install requests flask
pip freeze > requirements.txt
Terminal window
pip install -r requirements.txt
my-project/
├── .venv/ # Virtual environment (gitignore)
├── src/
│ └── main.py
├── requirements.txt # Dependencies
└── .gitignore
  • Always add .venv/ to .gitignore
  • Use requirements.txt to share dependencies
  • Consider uv or poetry for advanced dependency management