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 --extra dev --extra docs --upgrade
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/