A curated list of the best free resources for learning Python from scratch — guides, references, common-error fixes, and hands-on practice.
Every linked guide below is a free, beginner-first tutorial from pythonbeginner.help — a learning and problem-solving resource for new Python programmers. Start at the homepage or jump straight to a topic.
- Getting Started
- Core Language
- Data Structures
- Functions & Modules
- Files & Errors
- Fixing Common Errors
- How-To Recipes
- Built-in Function Reference
- Practice
- What Is Python? A Beginner-Friendly Introduction — what Python is and why it's a great first language.
- How to Install Python on Windows, macOS, and Linux — get a working Python on any OS.
- How to Run Python Code (Command Line and IDEs) — the different ways to actually run a script.
- Your First Python Program: Hello World Explained — line-by-line walkthrough of your first program.
- Python Syntax Basics — statements, expressions, and the rules.
- Python Indentation Rules and Why They Matter — whitespace is part of the syntax in Python.
- Variables Explained for Beginners — naming, assignment, and how variables work.
- Data Types Overview — strings, numbers, booleans, and more.
- if / elif / else Explained — making decisions in code.
- for Loops and while Loops — repeating work.
- Lists Explained — ordered, mutable collections.
- Tuples Explained — immutable sequences.
- Dictionaries Explained — key/value lookups.
- Sets Explained — unique, unordered collections.
- When to Use Lists vs Tuples vs Sets vs Dictionaries — choosing the right structure.
- Functions Explained — defining and calling functions.
- Parameters and Arguments — passing data in.
- Return Values — getting data back out.
- Default and Keyword Arguments — flexible function calls.
- Modules and How Import Works — reusing code across files.
- File Handling Basics (Read and Write) — working with files safely.
- Errors and Exceptions Explained — what goes wrong and why.
- try / except / else / finally — handling errors gracefully.
The most-searched beginner errors, each with causes and a step-by-step fix:
- Common Python Errors — Beginner Guide
AttributeError: 'NoneType' object has no attribute ...IndexError: list index out of rangeKeyErrorwhen accessing a dictionaryIndentationError: unexpected indentImportError: No module named XFileNotFoundError: [Errno 2] No such file or directory
➡️ Full error index: pythonbeginner.help/errors
Short, task-focused answers:
- How to convert a string to an int
- How to check if a file exists
- How to check if a key exists in a dictionary
- How to check if a string contains a substring
- How to append to a file
➡️ All recipes: pythonbeginner.help/how-to
Clear explanations of Python's built-ins:
➡️ Full reference: pythonbeginner.help/reference
- Beginner Python Exercises — runnable exercises with solutions.
- Python Cheatsheet — one-page syntax reference.
- Python Error Fixes — searchable index of common errors.
Suggestions welcome — open an issue or pull request. Please keep entries beginner-friendly and free to access.
To the extent possible under law, pythonbeginner.help has waived all copyright and related rights to this list (CC0 1.0).
