Skip to content
My Subject Hub

Online Python course: from your first program to classes and objects

Python reads almost like plain English, which makes it a good first programming language. You learn it by writing small, working programs from the first lesson, live and one-to-one with a tutor who watches you code and shows you how to fix your own mistakes.

  • First 30-minute class free
  • Live, one-to-one, online
  • Female tutors on request
  • Reply within 24 hours

The Python course at a glance

Short answers to the questions students and parents ask first. Each one is explained in more detail further down the page.

What is Python used for?

Python is a general-purpose language used to automate everyday tasks, analyse data, build machine learning models, run web back ends and do scientific work. Many schools and universities also teach programming with it because its code is short and readable.

Who should learn Python?

Complete beginners, school and university students whose course uses Python, and adults who want a first language for automation or data work.

What do I need before I start?

No programming experience. You should be comfortable using a computer, and you need a laptop or desktop where Python can be installed. The tutor helps with the installation in the first lesson.

Which topics does the course cover?

Python fundamentals, variables and data types, conditions and loops, functions, lists, tuples, dictionaries and sets, object-oriented programming, and error handling and files, with practical exercises and small projects throughout.

How are the classes delivered?

Live and one-to-one on Microsoft Teams or Zoom. You share your screen and write the code yourself while the tutor explains, asks questions and helps you debug. Nothing is pre-recorded.

How can I start learning Python?

Book the free 30-minute introductory class with the form on this page or on WhatsApp. We reply within 24 hours, and in the class the tutor checks your level and suggests where to begin.

Who should take this Python course?

  • Complete beginners who have never written code
  • School students whose Computer Science course uses Python
  • First-year university students on an introductory programming course taught in Python
  • Adults who want a first language for automating tasks or working with data
  • Programmers from another language who want to write Python properly

Where students often get stuck

  • IndentationError and other errors caused by spacing
  • Knowing when to use a list, a tuple or a dictionary
  • Functions that print a value when they should return it
  • Long error messages (tracebacks) that seem impossible to read
  • What self and __init__ mean inside a class

Prerequisites

  • No programming experience. The course starts with what a variable is.
  • Comfortable using a computer: typing, saving files and finding folders.
  • School-level arithmetic. You do not need advanced maths to start.

What you need for lessons

  • A laptop or desktop computer. A phone or tablet is not enough for writing code.
  • A stable internet connection and Microsoft Teams or Zoom.
  • A quiet place where you can share your screen and talk with the tutor.

Python course syllabus

The topics in the order they are usually taught. The tutor adjusts the order and depth to your level, and to your school or university syllabus if you share it.

  1. Python fundamentals

    • Installing Python 3 and running your first script
    • Trying ideas in the interactive shell
    • print(), input() and comments
    • How Python uses indentation to group code
  2. Variables and data types

    • Integers, floats, strings and booleans
    • Converting types with int(), float() and str()
    • String methods and f-strings
    • Arithmetic, integer division (//) and remainder (%)
  3. Conditions and loops

    • if, elif and else
    • Comparison and logical operators: and, or, not
    • while loops, and for loops with range()
    • break, continue, counters and running totals
  4. Functions

    • Defining functions with def
    • Parameters, default values and return values
    • Local and global scope
    • Using modules such as math and random
    • Splitting a program into small functions you can test
  5. Data structures

    • Lists: indexing, slicing, append and sort
    • Tuples, and when a value should not change
    • Dictionaries for looking things up by key
    • Sets for unique values
    • List comprehensions
  6. Object-oriented programming

    • Classes, objects and __init__
    • Attributes, methods and self
    • Inheritance and overriding methods
    • Special methods such as __str__
  7. Error handling and files

    • Reading a traceback from the last line up
    • try, except, else and finally
    • Common exceptions: ValueError, KeyError, ZeroDivisionError
    • Raising your own exceptions
    • Reading and writing text files with with open()

A practical way to learn

Write it, run it, change it
Every new idea goes into a real Python file and runs straight away. Then you change one thing, predict what will happen and run it again.
Read the traceback first
When a program crashes, you read the error with the tutor, starting from the last line, until you can find the cause on your own.
Small programs that grow
Exercises start as a few lines and grow over several lessons into a complete program, so you see how functions, lists and classes fit together.
Your syllabus, if you have one
School and university students can share their course outline or past lab tasks. The tutor follows that order and style.

Practice exercises and projects

Examples of exercises used in lessons. The tutor picks ones that suit your level and interests, and you write every line yourself.

  • Marks and grade calculator

    Read a list of marks, work out the total, average and grade, and print a tidy report.

    Practises

    • Input and type conversion
    • Conditions
    • Lists and loops
  • Number-guessing game

    The computer picks a random number and gives hints until you guess it, counting your attempts.

    Practises

    • The random module
    • while loops
    • Functions
  • Contact book saved to a file

    Add, search and delete contacts stored in a dictionary, and keep them in a text file between runs.

    Practises

    • Dictionaries
    • Reading and writing files
    • try and except
  • Shop inventory with classes

    Model products as objects, track stock, and refuse impossible sales with a clear error message.

    Practises

    • Classes and objects
    • Inheritance
    • Raising exceptions

Your assignments stay your own

The tutor explains, reviews your code and helps you find bugs, but does not write graded assignments or lab tasks for you.

Read our Academic Integrity Policy

What you can expect to learn

  • Write, run and fix Python programs of your own, starting from a blank file
  • Choose between a list, tuple, dictionary and set for a task
  • Break a problem into functions that each do one job
  • Read a traceback and find the line that caused the error
  • Handle bad input with try and except instead of letting the program crash
  • Write simple classes and explain objects, methods and inheritance

These are the aims of the lessons. Progress depends on where you start and how much you practise, and we never promise grades or results.

Suitable learning levels

Python is a beginner course: most students start with no experience. You do not have to start at the first topic, though.

  • Level: Beginner

    Starting from zero

    You have never programmed. You begin with print(), variables and input, and move on only when each idea is clear.

  • Level: Beginner to intermediate

    Following a school or university course

    Your course already uses Python. Lessons follow your syllabus and help with the topics you find hard, such as loops, functions or files.

  • Level: Intermediate

    You know the basics

    You can write loops and functions, but data structures, classes or error handling feel shaky. The free class finds the gaps, and lessons start there.

Where to go next

Python is often the first step. These courses build on what you learn here.

  • Object-Oriented Programming

    Take classes, inheritance and design further, in Python or the language your course uses.

  • Data Structures and Algorithms

    Once you program confidently, learn how lists, trees and graphs work and how fast algorithms run.

  • JavaScript Programming

    Add a second language and make web pages that react to clicks and forms.

  • Programming Courses

    Compare Python with JavaScript, C++ and the other programming courses.

Free guides

Your Python tutor

Python classes are taught by the programming tutors below. Each profile is published with the tutor’s consent. When you get in touch, we suggest a tutor who suits your level and timetable.

  • Portrait of Ali Sher Abbasi, tutor at My Subject Hub

    Ali Sher Abbasi

    Tutor at My Subject Hub

    • BS (Computer Science)
    • DSA certification
    Teaching experience
    5 years
    Teaching languages
    English and Urdu
    Computer science and programming
    • Programming Fundamentals
    • C++ and Java
    • JavaScript and Web Development
    • Object-Oriented Programming
    • Data Structures and Algorithms
    • Advanced Computer Science
    • Cybersecurity Fundamentals
    • FYP Mentoring
    School and college subjects
    • Mathematics
    • Science, Physics, Chemistry and Biology
    • English
    • Urdu
    Teaching approach
    Friendly and patient. Daily tasks and assignments, with quizzes to check progress, and we move to the next topic only when the previous one is crystal clear.
    Curricula and boards
    All curricula and boards
    Online availability
    Any time that suits the student
See all tutors

Course fee

Python, JavaScript, C++, Java and C. One flat monthly fee per course, whatever the number of classes a week.

International
⁦$60⁩a month
Saudi Arabia
⁦SAR 180⁩a monthIncludes the 20% discount for students in Saudi Arabia

Object-Oriented Programming, Data Structures and Algorithms and Cybersecurity use the monthly plans, like academic subjects.

See all fees and plans

Python course questions

Which version of Python do you teach?

Python 3, the current version. Python 2 is no longer supported. If an old tutorial writes print without brackets, the tutor shows you the Python 3 way.

Do I need to be good at maths to learn Python?

No. School-level arithmetic is enough for this course. Some fields that use Python, such as data science and machine learning, need more maths later, but you can learn to program first.

Is Python a good first programming language?

For most beginners, yes. The syntax is short, there are no semicolons or type declarations to remember, and you see results quickly. If your school or university course uses C++, starting with C++ may save you time.

See the C++ course

Can school students take the Python course?

Yes, if they can use a computer comfortably. The tutor sets the pace and examples for the student, and follows the order of their Computer Science syllabus if it uses Python.

Which software will I use?

Python 3 and a code editor such as VS Code, IDLE or the one your course uses. They are free, and the tutor helps you set them up in the first lesson.

What can I learn after Python?

Most students go deeper into Object-Oriented Programming, then Data Structures and Algorithms. Others add JavaScript to build web pages. The tutor suggests a next step that fits your goal.

Read about the Object-Oriented Programming course

How long does it take to learn Python?

There is no fixed length. It depends on where you start, how many lessons you take each week and how much you practise between them. The tutor suggests a plan after the free class. The fee is ⁦$60⁩ a month (⁦SAR 180⁩ in Saudi Arabia), whatever the number of classes a week.

See fees and plans

Book a free introductory Python class

Meet the tutor, write a few lines of Python together, and find out where to start. Fill in the form and we will arrange a time.

What happens next

  1. We reply within 24 hours, on WhatsApp or by email.
  2. You agree a time for the free 30-minute class with the tutor.
  3. In the class the tutor checks your level, you write a little code together, and you get a suggested starting point.
  4. There is no obligation to continue after the free class.

Tell us about the student

Only the name, the student’s level and one way to reach you are required. Everything else is optional.

About the student
How we can reach you

A contact number with country code, an email address, or both. We need at least one to reply; email is fine if you would rather not share a number.

Class preferences(optional)
Preferred tutor(optional)

We use these details only to reply to you and arrange classes. How we handle your information