Study guide

How to Learn Python From Scratch

Python is the most common first language for a reason: it reads close to English, it runs anywhere, and the same language is used for automation, data, web back ends and AI. The hard part is not the language. It is knowing what to learn in which order, and knowing when you actually understand something rather than just recognise it.

This guide gives you that order. It is the same sequence the LoWisa Python course follows, but it works with any material you choose.

Updated 2026-09-27

Before you start: three honest answers

  • Do you need maths? No. Arithmetic and a willingness to think step by step are enough for everything below until data work.
  • Do you need a laptop? Not to begin. The first several levels can be learned and practised on a phone. You will want a computer once you build projects with several files.
  • How long does it take? About 30 minutes a day gets most people through the foundations in four to six weeks. Consistency beats long sessions.

The order that works

Each stage builds on the one before it. Skipping ahead is the most common reason beginners stall: the error messages stop making sense because the ideas underneath them were never settled.

  1. Think in Python. What a program is, how the interpreter reads it line by line, and how to run your first lines. Goal: you can predict what a three-line program prints before you run it.
  2. Foundations. Values, variables, strings, numbers and indentation as syntax. Goal: you can explain why a mis-indented line breaks a program.
  3. Decisions and loops. if, for and while. Goal: you can write a loop that stops at the right moment without guessing.
  4. Collections. Lists, dictionaries, sets and tuples, and when each one is the right choice. Goal: you can pick a dictionary over a list and say why.
  5. Functions and scope. Breaking a problem into named pieces, arguments, return values and where a variable lives. Goal: you can read a function you did not write and say what it returns.
  6. Errors and debugging. Reading a traceback from the bottom up, and fixing the cause instead of the symptom. Goal: an error message becomes a clue, not a wall.
  7. Files and data. Reading and writing files, CSV and JSON. Goal: you can load real data, change it and save it.
  8. Modules, objects and your first project. Packages, classes and a small program you build end to end. Goal: something that runs, that you can explain line by line.

After these eight, the path splits by interest: testing, types and modern Python, concurrency, networking, performance and packaging for production. None of them are needed to be useful; all of them matter once Python is your job.

How to know you understood a level

Recognising code is not the same as understanding it. Before you move on, check yourself against these three:

  1. Explain it without the notes. Say in two sentences what the idea is for. If you need to look, you are not ready.
  2. Predict before you run. Read a short program and say what it will print. Then run it. Wrong predictions are the most useful thing you will get all week.
  3. Change something on purpose. Take working code, change one thing, and say in advance what will break.

Mistakes that slow beginners down

  • Copying code you cannot explain. It works today and teaches nothing. Type it, then explain it.
  • Tutorial hopping. Five half-finished courses teach less than one finished one.
  • Starting with a framework. Web and data frameworks hide the language. Learn Python as a language first.
  • Never revising. Without spaced revision most of a week is forgotten within a month. See Active recall and flashcards.

Learning Python with LoWisa

The LoWisa phone app has a Python course with a Start Here level and seventeen levels after it, from the interpreter to reading and improving complex Python systems. Level 0 is free on every course. Each level is taught step by step by the tutor, ends with a checkpoint and flashcards, and can be listened to as a two-host episode in Insight mode. The app is on Google Play and the App Store.

If you have never coded, pick "Never coded" when the app asks where you are starting from, and it starts from the first idea rather than assuming you know what a variable is.

Frequently asked questions

Is Python good for complete beginners?

Yes. Its syntax is close to plain English, it gives readable error messages, and the same language is used in automation, data, web back ends and AI, so what you learn first stays useful.

How long does it take to learn Python basics?

With about 30 minutes a day, most beginners are comfortable with the foundations (variables, loops, collections, functions, errors and files) in four to six weeks.

Can I learn Python on my phone?

You can learn and practise the foundations on a phone. The LoWisa app teaches Python level by level with checkpoints and flashcards. A computer becomes useful once you build multi-file projects.

What should I learn after Python basics?

Build one small project end to end, then choose a direction: testing and types for software work, files and data for analysis, or networking and services for back-end work.

Start Python free

Level 0 of every course is free. Pick Python, tell the app where you are starting from, and the first lesson begins.