← All learning paths

Typorithm learning path

Python: practical foundations

Build useful Python scripts through values, Unicode, collections, functions, iteration, data records, files, JSON/CSV and meaningful tests. Six sections per lesson with small independent tasks and hints. Reviewed against Python 3.15 documentation; examples verified on 3.13, 3.14 and 3.15. Reading and self-checks work in the app; execution uses the downloadable computer lab.

16Focused modules
16Lessons to explore
48Typing drills
Python: practical foundations course illustration

Study with a practical destination

Use the linked lessons in order, complete the lab and explain the decisions without the reference. Select the path and depth that match your role.

Python: from small functions to a validated local report

Before starting: No previous Python is required. Basic familiarity with files and running a program helps; each language concept builds from a small worked example. Reading and self-checks work in the app. Optional execution needs a maintained Python 3.13+ on a computer, with no third-party exercise packages.

Build and explain: Write a small reproducible script that validates data, preserves identity and caller-owned input, handles Unicode and structured formats, and has tests that reject a meaningful controlled defect.

  1. 1. Scripts, imports and a reproducible Python environment
  2. 2. Values, names, exact types and numeric boundaries
  3. 3. Strings, Unicode and explicit comparison rules
  4. 4. Conditions, None and meaningful zero
  5. 5. Lists, aliases and the limits of a shallow copy
  6. 6. Dictionaries, sets and deterministic summaries
  7. 7. Iteration, enumerate and complete boundaries
  8. 8. Functions, return contracts and fresh defaults
  9. 9. Comprehensions, filtering and stable sorting
  10. 10. Parsing, validation and narrow exception handling
  11. 11. Iterators, generators and consumption boundaries
  12. 12. Classes, dataclasses and runtime contracts
  13. 13. Files, UTF-8 and context-managed lifetimes
  14. 14. JSON boundaries and correct CSV quoting
  15. 15. Tests that reject a plausible wrong filter
  16. 16. Capstone: a validated, duplicate-aware catalogue report

Review evidence: Attempt the small task before revealing its solution. Include booleans versus integers, None versus zero, repeated calls, Unicode, shallow references, consumed iterators, invalid records and conflicting identities. Optional stretches do not block the core. Local checks establish the stated fixture behavior, not a security sandbox or professional certification.

Your learning path

0 of 16 lessons completed

Saved on this device

01

Module 1 · 1 lessons

Scripts, imports and a reproducible Python environment

Separate defining reusable behavior from running a script, and identify the interpreter you actually use.

0/1 complete
02

Module 2 · 1 lessons

Values, names, exact types and numeric boundaries

Use object and type semantics deliberately instead of treating every numeric-looking value as interchangeable.

0/1 complete
03

Module 3 · 1 lessons

Strings, Unicode and explicit comparison rules

Normalize text for the intended comparison while keeping human-language and encoding assumptions visible.

0/1 complete
04

Module 4 · 1 lessons

Conditions, None and meaningful zero

Make missingness and branch priority explicit instead of using a truthiness shortcut.

0/1 complete
05

Module 5 · 1 lessons

Lists, aliases and the limits of a shallow copy

Return a changed outer list without accidentally modifying the caller's list.

0/1 complete
06

Module 6 · 1 lessons

Dictionaries, sets and deterministic summaries

Use keys for counts, membership for uniqueness and an explicit sort for presentation.

0/1 complete
07

Module 7 · 1 lessons

Iteration, enumerate and complete boundaries

Visit each intended element once and distinguish a displayed position from a source index.

0/1 complete
08

Module 8 · 1 lessons

Functions, return contracts and fresh defaults

Keep repeated calls independent and avoid mutating an optional caller-owned collection.

0/1 complete
09

Module 9 · 1 lessons

Comprehensions, filtering and stable sorting

Express one clear transformation without hiding the population rule or mutating the source.

0/1 complete
10

Module 10 · 1 lessons

Parsing, validation and narrow exception handling

Convert only the representations the contract accepts and report invalid data without inventing success.

0/1 complete
11

Module 11 · 1 lessons

Iterators, generators and consumption boundaries

Distinguish a reusable iterable from a one-pass iterator and observe when work actually occurs.

0/1 complete
12

Module 12 · 1 lessons

Classes, dataclasses and runtime contracts

Use a small data object without confusing type hints, generated methods and deep immutability.

0/1 complete
13

Module 13 · 1 lessons

Files, UTF-8 and context-managed lifetimes

Write Unicode deliberately and verify content, bytes and handle closure in a temporary fixture.

0/1 complete
14

Module 14 · 1 lessons

JSON boundaries and correct CSV quoting

Validate structured records and use the format writer instead of concatenating delimiters by hand.

0/1 complete
15

Module 15 · 1 lessons

Tests that reject a plausible wrong filter

Use independent exact expectations and prove a test fails when the implementation is deliberately wrong.

0/1 complete
16

Module 16 · 1 lessons

Capstone: a validated, duplicate-aware catalogue report

Build a small reproducible pipeline that preserves identity, rejects conflicts and counts only the selected population.

0/1 complete