Skip to content

curriculum: materialize readable solutions for tuples and dictionaries #51

Description

@abhiksark

Motivation

The current solution files are loader stubs into _answers.py. Learners and reviewers benefit from direct, readable reference code they can inspect one exercise at a time.

Current evidence

  • solutions/tuples1.py through tuples10.py and solutions/dictionaries1.py through dictionaries10.py are part of the loader-stub migration target.
  • Reference solutions are verified by tests/integration/test_solution_verify.py.
  • The project supports Python 3.9+.

Exact scope

Replace the 20 loader stubs for tuples and dictionaries with direct teaching-quality Python source. Preserve each expected answer and keep _answers.py entries intact until the full 292-file migration is complete.

Acceptance checklist

  • solutions/tuples1.py through tuples10.py contain direct readable source, not loader imports or delegation.
  • solutions/dictionaries1.py through dictionaries10.py contain direct readable source, not loader imports or delegation.
  • Each solution preserves the behavior expected by its matching hidden check.
  • Source favors clear beginner teaching over clever compression and is Python 3.9 compatible.
  • The corresponding _answers.py entries remain unchanged for the wider staged migration.

Explicit exclusions

Do not change exercises, checks, manifest ordering, unrelated solution slices, or remove/restructure _answers.py.

Likely files

  • solutions/tuples1.pysolutions/tuples10.py
  • solutions/dictionaries1.pysolutions/dictionaries10.py

Verification

python -m pytest tests/integration/test_solution_verify.py -q
pythonlings --root tests/fixtures/passing_curriculum verify
python -m pytest -q

Also manually inspect all 20 files to ensure they are direct teaching-quality Python source.

Sprint coordination

See the sprint Discussion. This issue is unassigned and is not a reservation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: curriculumCurriculum exercises, checks, and solutionsdev sprintPythonlings Community Dev Sprint August 2026enhancementNew feature or requestgood first issueGood for newcomerssize: MMedium, self-contained contribution

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions