AGENTIC INITIAL STUDIO

Python foundations

Learn Python fundamentals, including data types, control flow, functions, files, debugging and object-oriented concepts, through one-to-one online guidance and practical exercises.

Beginner
Who this is for

A pathway with a practical destination.

For first-time programmers and learners who have followed tutorials but struggle to start a project independently.

Learning sequence

Build understanding, then connect the pieces.

  1. 01

    Set up & run

    Use the editor, run a script and interpret a traceback.

  2. 02

    Values & collections

    Work with strings, numbers, lists and dictionaries.

  3. 03

    Control & functions

    Express decisions, repeat work and extract reusable functions.

  4. 04

    Files & validation

    Read a small CSV and handle missing or invalid input.

  5. 05

    Objects & small programs

    Introduce classes, objects and responsibilities, then combine the concepts in a small program.

  6. 06

    Review & explain

    Check the output, explain the code and plan the next improvement.

Project outcome

Leave with something you can explain.

Build a small program around an agreed learning goal, organise it into understandable functions or classes, handle invalid input and verify its output. Practice topics are chosen to suit the learner; the interactive examples below illustrate selected concepts.

Learning evidence

What you should be able to do

  • Write and run a small program without copying an entire tutorial
  • Break a task into functions and inspect common errors
  • Use simple checks to verify a result
Try a small exercise

Think through the behaviour.

Predict the output, then change the program to count how many amounts are greater than 10.

Reveal the explanation

The output is 35. One extension is sum(1 for amount in amounts if amount > 10), which returns 2. Discuss why the total and the count answer different questions.

amounts = [12, 8, 15]
total = sum(amounts)
print(total)
Learning format

Guidance, practice and review.

Session count, schedule, language, prerequisites and any model costs are agreed before the engagement. These are proposed learning pathways, not accredited qualifications or scheduled public cohorts.

PYTHON / PLAYGROUND

Read it. Change it. Run it.

Illustrative demos, with a real Python editor and output console. Choose an example and experiment. These examples are not the full course syllabus.

ONE STORY / SMALL STEPS

From a cafe greeting to a small, testable program.

Work through 26 core examples across six stages, then explore three optional extensions. Every example includes its own data. Predict, run, change one thing and explain the difference; use the self-check before moving on.

Practice marks are your own checklist, saved on this device. They do not grade your code. Code and prepared input are not saved with the marks.

Prepared input / stdin

Enter all answers here before running. Input is not echoed; prompts appear in the output. Missing lines produce EOFError. Reset restores the example inputs.

Predict first · reveal original output

This is the output of the unchanged starter. Your edits may intentionally produce different results.

Quick self-check · explain it in your words

Reveal explanation

Ctrl / ⌘ + Enter to run. Tab inserts four spaces; Esc leaves the editor. Each run starts with fresh Python variables.

OUTPUT

Python loads on your first run (about 14 MB). Execution stays in this browser tab and resets after 10 seconds. Standard-library exercises; input() reads the prepared input box. Files are temporary browser files in a fresh folder per run. Extra package installation is not supported here. Work is not saved after closing or reloading this page. Download your code to keep it.

Garen, Ashe and Lux are used as a fan-made educational reference to League of Legends. All numbers and formulas are invented for this exercise; no live game data or artwork is used. This studio is not affiliated with Riot Games.

Python documentation: input, output & formatting ↗More practice: W3Schools Python ↗
PRACTISE INDEPENDENTLY

Your next build: the Latte Cafe order desk.

Combine the ideas in your own version. The lab runs each example independently; combine the required pieces explicitly instead of relying on variables or files from earlier runs.

01 / Specify

Known drinks only; whole positive quantities; prices in cents; unknown or invalid orders receive a clear message.

02 / Build in small steps

Start from the receipt example. Extract a calculation function, add validation, then save and reload the order as CSV or JSON.

03 / Review the evidence

Check two lattes plus one tea total 1200 cents, an empty order totals zero, and invalid quantities are rejected. Explain why each check exists.

In one-to-one online sessions, we can review your trace, debugging decisions and explanation, then choose the next exercise. These are studio-authored examples; UOW’s public subject descriptions inform topic coverage, not university affiliation or official assessment preparation.

OOA → OOD → OOP

Design the cafe before adding classes.

The same cafe story connects requirements, responsibilities and Python objects. The class starter is deliberately small; quantity validation is a follow-up exercise.

OOA

Understand the order

Name the drinks, prices, quantities and output. Decide how an empty order and an invalid quantity should behave before choosing classes.

OOD

Assign responsibilities

MenuItem owns its name and unit price. Order owns its lines and total. An order contains menu items through composition, rather than inheriting from an item.

OOP

Implement and check

Run “Model a cafe order”. Create separate orders, inspect their state and add validation. Check two lattes total 900 cents and an empty order totals zero.

MenuItemname · price_cents
Orderlines[] · add(item, quantity)
total_cents()

self refers to an instance. Each Order creates its own lines list in __init__; a mutable class-level list would be shared across orders. The optional hero example explores inheritance separately.

AI AS A LEARNING PARTNER

Ask for a review. Keep your judgement.

Begin with your own analysis. Ask an AI tool to question assumptions, critique responsibilities or propose edge cases. Check each suggestion against the brief and the running code, then explain what you accepted and why.

“Review this design without rewriting it. Identify one unclear responsibility and two edge cases. Ask me to clarify missing requirements before suggesting changes.”

This is a prompt you can use with your own AI tool. The lab does not call an AI service.

CHECK YOUR UNDERSTANDING

How should an order relate to menu items?

Extension: add quantity validation to Order.add(), test an empty order and explain which class owns each rule.

ONE-TO-ONE / ONLINE

Your pace. Your questions. Your project.

Learn Python through live online sessions, shared coding and individual feedback. Start with your current understanding and build towards something you can explain and change yourself.

Prepare your learning goals ↗
  1. 01 / Before the session

    Discuss your goal, experience and a small starting exercise.

  2. 02 / During the session

    Share your screen, predict behaviour, write code and debug together.

  3. 03 / After the session

    Practise a focused extension and review your explanation and tests.

Chinese or English instruction, session timing, learning goals and fees are agreed individually. No fixed timetable or booking service is published here.

Give your project a clear starting point.

Explore the engagement process or prepare your project brief.

Website privacy

This page has no enquiry form, analytics service, or third-party font requests. Your language, appearance, and motion preferences are stored locally in this browser when storage is available.

If the site is hosted, the hosting provider may process standard request logs. Any future contact service will need its own information handling details.