All courses

Basic Python

Learn Python from zero through everyday problems: money, scores, dates, text, data files. Read code, step through it, find bugs and write your own programs right in the browser. For learners from grade 6 and adult beginners.

  • Beginner
  • About 15 hours
  • 14 sections
  • 62 lessons
Start learning

Sign in with Google or GitHub and the course opens in the Academy with the same account.

Course outline

  1. Section 1

    Getting started

    • What Python is, and how this course works

      Lesson · 10 min

  2. Section 2

    Variables and numbers

    • Python does the maths

      Lesson · 12 min

    • Variables: a box with a name

      Lesson · 12 min

    • Practice: money maths

      Practice · 40 min

    • Project: printing a receipt

      Practice · 20 min

  3. Section 3

    Text and input

    • Strings: text in quotes

      Lesson · 12 min

    • f-strings: mixing text and numbers

      Lesson · 12 min

    • input(): the program reads data

      Lesson · 10 min

    • Practice: text, numbers and input

      Practice · 40 min

    • Project: a payslip

      Practice · 20 min

  4. Section 4

    Conditions

    • True or false

      Lesson · 8 min

    • if, elif, else: choosing a path

      Lesson · 14 min

    • and, or, not: combining conditions

      Lesson · 10 min

    • Practice: making decisions

      Practice · 40 min

    • The electricity bill by tiers (Advanced)

      Practice · 20 min

    • Project: a taxi fare calculator

      Practice · 20 min

  5. Section 5

    Loops

    • for: doing it again and again

      Lesson · 10 min

    • Adding up, counting and finding the biggest

      Lesson · 12 min

    • while: looping until it's enough

      Lesson · 12 min

    • Practice: let the computer repeat

      Practice · 45 min

    • Interest and loans (Advanced)

      Practice · 25 min

    • Project: a savings plan

      Practice · 20 min

  6. Section 6

    Functions

    • Functions: giving a job a name

      Lesson · 10 min

    • return is not print

      Lesson · 12 min

    • Splitting a program into small functions

      Lesson · 8 min

    • Practice: small jobs with names

      Practice · 40 min

    • Advanced: electricity for three homes

      Practice · 15 min

    • Project: an invoice from small functions

      Practice · 20 min

  7. Section 7

    Lists

    • Lists and indexes

      Lesson · 10 min

    • Add, remove, sort

      Lesson · 12 min

    • Two names, one list

      Lesson · 8 min

    • Practice: the lists around us

      Practice · 40 min

    • Project: the class gradebook

      Practice · 20 min

  8. Section 8

    Dictionaries

    • Dictionaries: look things up by name

      Lesson · 10 min

    • Looping over a dictionary, and counting

      Lesson · 12 min

    • Small tables and grouping

      Lesson · 8 min

    • Practice: look up, count, group

      Practice · 40 min

    • Project: the café

      Practice · 20 min

  9. Section 9

    Working with text

    • String methods

      Lesson · 12 min

    • Accented letters in a computer

      Lesson · 12 min

    • Practice: cleaning up text

      Practice · 45 min

    • Project: tidying a contact list

      Practice · 20 min

  10. Section 10

    Dates and times

    • Dates with date

      Lesson · 12 min

    • Reading and writing dates and times

      Lesson · 10 min

    • Practice: calendars, deadlines and hours

      Practice · 45 min

    • Daily deposit interest (Advanced)

      Practice · 10 min

    • Project: a weekly timesheet

      Practice · 20 min

  11. Section 11

    Files and data

    • Reading and writing files

      Lesson · 12 min

    • Data tables: CSV and JSON

      Lesson · 12 min

    • Practice: the coffee shop's data

      Practice · 45 min

    • Project: the shop's sales report

      Practice · 20 min

  12. Section 12

    Errors and testing

    • Reading an error message

      Lesson · 12 min

    • try / except: catching an error

      Lesson · 15 min

    • assert: testing your own code

      Lesson · 12 min

    • Practice: programs that don't break

      Practice · 40 min

    • Project: an order counter that doesn't break

      Practice · 20 min

  13. Section 13

    Final project

    • Before the project

      Lesson · 10 min

    • Project (parts 1–3): cleaning the data

      Practice · 35 min

    • Project (parts 4–7): the spending report

      Practice · 45 min

    • Extra project: the school library

      Practice · 40 min

  14. Section 14

    Final exam

    • Final exam

      Quiz · 30 min

    • After the exam

      Lesson · 5 min