Python Environment and Package Management Glossary
Managing Python environments and dependencies.
Python
A programming language used to write scripts and build data analytics projects. Python environments and installations may be managed for each project using uv.
Python Version
The specific release of Python in use (example: 3.11, 3.12). Different projects may require different versions.
Virtual Environment
An isolated Python environment that keeps a project's dependencies separate from other projects and from the system Python installation. Prevents version conflicts between projects.
Environment Isolation
The practice of keeping each project's dependencies separate so they do not conflict with other projects or system-level packages.
pip
The standard Python package installer, included with Python.
Older workflows: pip install package-name or pip install -r requirements.txt
venv
Python's built-in tool for creating virtual environments manually.
Older workflow: python -m venv .venv then source .venv/bin/activate
uv manages virtual environments automatically, so manual activation is not required.
uv
A fast, modern Python package and project manager. Replaces the older pip + venv workflow. Key commands:
uv sync: install all dependencies listed in pyproject.tomluv run python script.py: run a script inside the managed environmentuv add package-name: add a new dependency to the project
uv sync
Reads pyproject.toml and installs all required dependencies
into the project's managed virtual environment.
Run this once after cloning a project.
Example: uv sync
uv run
Executes a script or command inside the project's managed environment
without needing to activate it manually.
Example: uv run python src/cintel/case_logic.py
pyproject.toml
The modern Python configuration file that defines project metadata, dependencies, and tool settings in one place. Used by uv to manage the project environment. Replaces older approaches (setup.py, setup.cfg).
requirements.txt
An older format listing project dependencies line by line.
Example: pandas==2.1.0
Still common in many tutorials and open-source projects.
uv can read requirements.txt, but pyproject.toml is preferred.
Dependency
An external Python package a project requires to run.
Examples: pandas, loguru, matplotlib.
Listed in pyproject.toml under [project] dependencies.
Lock File (uv.lock)
A file generated by uv that records the exact versions of all installed packages. Ensures every collaborator installs identical environments. Commit this file to version control.
setup.py / setup.cfg
Older Python project configuration files, now replaced by pyproject.toml. May be encountered in older projects and tutorials.
Package Index (PyPI)
The Python Package Index: the public repository of Python packages. pip and uv download packages from PyPI by default. Browse at: https://pypi.org/