Displaying Output with print()
Write your first Python code with print(), show text and numbers, and learn how to fix tiny early errors.
Short lessons, quick quizzes, and real coding exercises arranged in one clear beginner path.
Free from the first block to the last
Start without an account, or create a free one whenever you want to sync lesson progress across devices.
A clear path forward
Start with your first print(), then build through variables, collections, loops, functions,
files, and debugging.
Displaying Output with print()
Write your first Python code with print(), show text and numbers, and learn how to fix tiny early errors.
Python Boolean Values
Learn Python booleans: True, False, bool, flags, and why "True" is not the same as True.
Python List Basics
Learn why Python lists exist and how to create clear, ordered collections of related values.
Python for Loops & Loop Patterns
Learn how Python for loops work, then use them to process list items directly and make simple decisions.
Python Dictionary Basics
Learn why Python dictionaries exist and how to create clear, readable key-value records.
Python Functions
Learn why functions exist, how to define and call them, and how they make repeated Python code easier to read and change.
Python Modules & Imports
Learn what Python modules are, where they come from, and how to reuse code with import and module.name.
Python Code Style & Habits
Make your Python easier to read with clear names, consistent formatting, and useful comments.
Ready when you are
The complete Beginner Python path is free. No account and no setup required.
> Start Beginner Python
Displaying Output with print()
Write your first Python code with print(), show text and numbers, and learn how to fix tiny early errors.
This Block gets you writing your first visible Python code. You will use print() to display text, numbers, and multiple lines of output, while learning how Python runs code from top to bottom.
You will also meet the tiny errors that show up early: missing quotes, missing parentheses, and small punctuation mistakes that can break a line. Nothing scary, just the classic beginner stuff handled calmly.
What you will learn:
print() to display text on the screen42, 3.14, and -7By the end, you will have your first Python output working and a small checklist for dealing with those first annoying-but-normal errors.
Python Boolean Values
Learn Python booleans: True, False, bool, flags, and why "True" is not the same as True.
This Block introduces one of Python’s smallest but most important ideas: boolean values. You will learn how True and False work, how to store them in variables, and why booleans are perfect for yes/no facts like is_raining, has_paid, or can_go_out.
We keep it beginner-friendly and practical: real examples first, theory second. You will also see common traps, like writing true instead of True, or accidentally using "False" as text when you wanted the boolean value False.
What you will learn:
True and Falsebool type and check it with type()is_, has_, can_, and should_"True" or "False"By the end, you will be comfortable using booleans as small status flags in your code. Tiny values, big responsibility. Python likes them capitalized, and now you will too.
Python List Basics
Learn why Python lists exist and how to create clear, ordered collections of related values.
Separate variables work for a few values, but they become messy fast. This Block introduces Python lists as ordered containers for keeping related values together. You will learn how to create lists with square brackets, store strings and numbers, make empty lists, and choose clear names that explain what each collection contains.
What you will learn:
By the end, you will be able to organize related values into clean lists without creating item_1, item_2, and a small army of numbered variables.
Python for Loops & Loop Patterns
Learn how Python for loops work, then use them to process list items directly and make simple decisions.
Lists become much more useful when Python can process every item for you. This Block introduces the anatomy of a for loop, shows how the loop variable follows each list item, and makes indentation and repetition easy to trace. From there, you will print formatted messages, run small calculations, and combine loops with familiar conditions while keeping the original list unchanged.
What you will learn:
for loop over a listfor, the loop variable, in, the iterable, the colon, and the indented loop bodylen()if, elif, and else to handle items differentlyLeave with a clear loop pattern you can read, trace, and reuse whenever a list needs the same action applied to each item.
Python Dictionary Basics
Learn why Python dictionaries exist and how to create clear, readable key-value records.
Lists are great for ordered collections, but indexes become awkward when every value has a specific meaning. This Block introduces Python dictionaries as a clearer way to store named information. You will compare lists with dictionaries, explore keys and values, and create small records using familiar data types.
What you will learn:
None as dictionary valuesBy the end, you will be able to choose between a list and a dictionary and create readable records whose values explain themselves.
Python Functions
Learn why functions exist, how to define and call them, and how they make repeated Python code easier to read and change.
Repeated code can work perfectly well—right up until it needs to change. This Block introduces functions as named, reusable pieces of Python code that keep repeated tasks in one place.
You will define functions with def, choose clear names, write indented function bodies, and call the same function as many times as needed. Along the way, you will see how Python moves through a function call, how familiar tools such as loops fit inside functions, and how to avoid common mistakes with parentheses, colons, indentation, and definition order.
def, parentheses, a colon, and an indented bodyBy the end, you will be able to turn repeated steps into clear, named tasks and make small Python programs easier to read and update.
Python Modules & Imports
Learn what Python modules are, where they come from, and how to reuse code with import and module.name.
Python comes with useful code you can reuse instead of rebuilding every tool yourself. This Block introduces modules as named collections of reusable code and shows how to bring one into a program with import. You will use the standard-library math module, call math.sqrt(), and see why the module prefix keeps names clear.
What you will learn:
import module_namemodule_name.tool_nameLeave with a simple mental model for imports and a practical pattern you can reuse whenever Python already has the tool you need.
Python Code Style & Habits
Make your Python easier to read with clear names, consistent formatting, and useful comments.
Working code is only the beginning. This Block shows you how to make Python easier for people to understand by choosing descriptive names, formatting code consistently, and writing comments that add useful context. You will clean up working scripts while keeping their behavior unchanged.
What you will learn:
Build simple habits that make your code easier to scan, understand, and safely change—for other developers and for future-you.