Pedagogy: split 20_python_review into focused notebooks under 03_python_basics/
- Dominant language
- Jupyter Notebook
- Stars
- 12
- Forks
- 76
- PR merge metrics
- No merged PRs in 30d
Description
## Goal
`00_introduction/20_python_review.ipynb` is roughly 356 cells covering arithmetic, variables, strings, functions, lists/tuples/dicts/sets, control flow, file I/O, modules, type hints, and assertions in a single notebook. That makes it slow to navigate, hard to revisit a single concept, and slow to render in Colab.
## Scope
Create new directory `03_python_basics/` with focused notebooks (≤ ~80 cells each, 2–3 exercises per notebook):
- `10_numbers_operators.ipynb` — int / float / complex, arithmetic, operator precedence
- `20_variables_functions.ipynb` — assignment, function definition, return vs print, scope
- `30_strings.ipynb` — indexing, slicing, methods, f-strings
- `40_lists_tuples.ipynb` — sequences, mutation, common operations
- `50_dicts_sets.ipynb` — key-value, common operations
- `60_control_flow.ipynb` — if / elif / else, for, while, break / continue
- `70_file_io.ipynb` — `with open`, read / write, encoding
The existing `00_introduction/20_python_review.ipynb` can be retired or repurposed as a one-page index linking to the new notebooks.
## Why
- Easier for learners to find and revisit a single concept.
- Smaller notebooks render faster in Colab and fail less often in CI.
- Each notebook can grow exercises and explanations independently without bloating one file.
## Acceptance
- [ ] All seven new notebooks exist and execute end-to-end.
- [ ] Total content covers what `20_python_review.ipynb` covered today (no regressions).
- [ ] Each new notebook has at least 2 exercises.
- [ ] `20_python_review.ipynb` is either removed or reduced to a TOC pointer.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.