A refresher path through the Python graph for someone who has written Python before and has an assessment coming: run and read, rebuild the core, then work the way an assessment expects.
- Domain
- Python Programming
- Estimated time
- About 30 hours
- Formats
- reading, video, practice, project
- Cost
- Free
- Status
- draft · v0.1.0
- License
- CC BY-SA 4.0
Outcomes you will reach
- Run a Python program and read its errors foundation
- Choose the right built-in data structure foundation
- Write functions with clear signatures foundation
- Iterate and transform data in Python foundation
- Handle errors deliberately intermediate
- Read and write files and structured data intermediate
- Test Python code with pytest intermediate
- Model data with classes and dataclasses intermediate
- Reach for the standard library first intermediate
- Analyse what Python code costs advanced
- Annotate and check Python types intermediate
- Ship a small Python project advanced
- Solve a coding problem under assessment conditions advanced
Resources
No resources listed yet.
Who this is for
Someone who has written Python before, has not used it much lately, and has an assessment coming:
a take-home, a pair-programming session, or a technical screen. It assumes you can already read
code and are not meeting the language for the first time.
It is a path through the graph, not the curriculum itself. Every step names the outcome it serves;
if you already have one, skip it — that is the point of nodes.
Plan
Refresh, about 8 hours
Rebuild the floor, fast. If a step feels easy, prove it with the evidence on the node and move on.
- Get running. Outcome: Run a Python program and read its errors. A virtual environment, a script that runs, and reading a traceback bottom up. Break a program three ways on purpose and name each exception from the message.
- Reclaim the structures. Outcome: Choose the right built-in data structure. The one that matters under time pressure: what does this code ask most often? Do the timing exercise — list membership against set membership at 100,000 items.
- Functions. Outcome: Write functions with clear signatures. Defaults, returns, and meeting the mutable-default trap once.
- Iteration. Outcome: Iterate and transform data in Python. Comprehensions where they clarify, generators where the data is large.
Strengthen, about 12 hours
The parts a reviewer actually looks at.
- Failure. Outcome: Handle errors deliberately. Catch what you can answer; let the rest travel.
- Data in and out. Outcome: Read and write files and structured data.
pathlib, CSV, JSON, encoding.
- Tests. Outcome: Test Python code with pytest. Spend real time here: in a take-home this is half the grade. Practise the four cases — ordinary, empty, boundary, wrong.
- Shape the data. Outcome: Model data with classes and dataclasses. And know when a dict was enough.
- The library. Outcome: Reach for the standard library first.
Counter, defaultdict, itertools, datetime.
Assessment-ready, about 8 hours
- Cost. Outcome: Analyse what Python code costs. Find the accidental quadratic in your own old code; there is usually one.
- Conduct. Outcome: Solve a coding problem under assessment conditions. Timed problems, out loud, restating before writing.
Beyond the assessment, about 2 hours
Not usually graded, worth having.
- Types. Outcome: Annotate and check Python types.
- Handover. Outcome: Ship a small Python project. If your assessment is a take-home, move this into Strengthen and do it before the attempt.
Project
Build one small tool end to end and submit it as if it were the assessment: read a CSV of something
you care about, compute a summary, write the result out, and cover it with tests. Then hand the
repository to someone else and have them run it from the README alone. Every question they ask is a
defect.
Check your progress
Use the take-home task as a mock, under time, before the real
thing. The evidence statements on each outcome are the checklist: if you can produce what the node
asks for, you have it.
Open Degree does not track your progress and never will — keep your own list. The nodes are the
list.
Check your progress
projectA timed take-home in the shape real hiring uses: read messy data, compute a result, test it, and hand over a repository someone else can run.