Repo for basic Python track of UBDS^3
Basic Python course for UBDS^3 2026, focusing on intro to programming, data types, dataframes, and intro to data science
| Day | Topic |
|---|---|
| 1 | Python - variables, lists - notebook |
| 2 | Functions, expressions, dictionary, loops - Chapter 2, Chapter 3, Chapter 4 |
| 3 | Writing functions, reading errors, debugging, classes - notebook, alignment practical |
| 4 | Pandas & matplotlib - intro notebook, GFF notebook |
| 5 | EDA, statistics, regression - notebook |
Git is needed to download the course repository and switch between versions.
Download and install Git for Windows from:
https://git-scm.com/download/win
After installation, open PowerShell or Git Bash and check:
git --versionWith Homebrew:
brew install gitWithout Homebrew, install Apple's command line tools:
xcode-select --installThen check:
git --versionUbuntu or Debian:
sudo apt update
sudo apt install gitFedora:
sudo dnf install gitThen check:
git --versionThis repository includes a shared pyproject.toml for all practicals.
Windows PowerShell:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"macOS with Homebrew:
brew install uvmacOS without Homebrew:
curl -LsSf https://astral.sh/uv/install.sh | shLinux:
curl -LsSf https://astral.sh/uv/install.sh | shAfter installing, close and reopen the terminal, then check that uv works:
uv --versionFrom the Basic-python-2026 folder, run:
uv syncThis creates a local virtual environment in .venv and installs Jupyter, BioPython,
NumPy, pandas, matplotlib, SciPy, statsmodels, scikit-learn, seaborn, and pytest.
If you need to recreate or update the lock file, run:
uv lockUse Jupyter from the uv environment:
uv run jupyter notebookYou can also run tests for the day 3 alignment practical:
uv run pytest day3/real_aligment/testsuv init creates a new Python project by adding a pyproject.toml file. You do
not need to run it for this repository because the project file is already here.
uv inituv add installs a new package and records it in pyproject.toml. Use this if a
new practical needs an extra package.
uv add package-nameFor example:
uv add requestsuv sync installs everything listed in pyproject.toml and uv.lock into the
local .venv environment.
uv syncuv lock resolves package versions and updates uv.lock. Use it after changing
dependencies, then share the updated uv.lock with the repository.
uv lockTo run commands inside the uv environment, prefix them with uv run:
uv run python --version
uv run jupyter notebook