All Roadmaps
๐Ÿ
Roadmap

Python Roadmap

The most versatile path in software. Python opens doors to web development, data science, automation, and machine learning.

6โ€“10 months
4 phases
~41 weeks

The short answer

Python is the most widely taught programming language in the world and one of the best choices for a first language. It's readable, versatile, and directly employable across software development, data science, machine learning, and automation. Python is the #1 language on GitHub (2024 Octoverse report), used by Google, Netflix, NASA, and virtually every major AI lab. The timeline to useful Python skills (writing scripts, automating tasks) is 2โ€“4 weeks; getting job-ready for a Python role takes 6โ€“10 months at 10 hours per week. You can learn Python entirely for free through CS50P (Harvard), freeCodeCamp, Kaggle Learn, and MIT OpenCourseWare, no paid bootcamp required.

Phase 1: Python Fundamentals

The goal of the first phase isn't to learn every Python feature, it's to stop worrying about syntax and start building things. By the end of seven weeks you should be able to write a script that reads a file, processes some data, and writes an output. That small loop (input, logic, output) is the skeleton of almost everything you'll build later.

What to learn: variables and types, control flow, functions, lists/dicts/tuples/sets, file I/O, basic error handling.

beginner
1 week

Variables & Types

Strings, integers, floats, booleans, and Python's dynamic typing system.

beginner
1 week

Control Flow

if/else, for loops, while loops, and list comprehensions.

beginner
2 weeks

Functions

Define, call, and compose functions. Understand scope, arguments, and return values.

beginner
2 weeks

Data Structures

Lists, tuples, dictionaries, and sets, and when to use each.

beginner
1 week

File I/O & Errors

Read and write files, handle exceptions gracefully.

Codecademy
Free to start

Learn Python 3 (Free Start)

Codecademy's Learn Python 3 course is beginner-friendly, interactive, and free to start. The browser-based environment means no setup friction on day one.

Start Python free on Codecademy โ†’

Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

Phase 2: Intermediate Python

This phase is where Python starts feeling like a real professional language rather than a calculator. OOP is the most important milestone here: if you can write a class with methods and inheritance, you can read and contribute to almost any Python codebase. Decorators, generators, and testing might feel abstract at first. The way to make them click is to apply them to something you've already built.

What to learn: classes, inheritance, dunder methods, modules, pip, virtual environments, decorators, generators, pytest basics.

intermediate
3 weeks

Object-Oriented Python

Classes, inheritance, dunder methods, and OOP principles.

intermediate
1 week

Modules & Packages

Import from the standard library, install and use third-party packages with pip.

intermediate
2 weeks

Decorators & Generators

Higher-order functions, generator expressions, and Python's advanced features.

intermediate
2 weeks

Testing with Pytest

Write unit tests, use fixtures, and test-driven development basics.

Harvard's Free Python Course

CS50's Introduction to Programming with Python is free to audit, covers intermediate Python well, and comes from one of the most respected computer science educators. The certificate costs money but the content is free.

Free Harvard Python on CS50 โ†’

Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

Phase 3: Choose Your Direction

Python is unusually multi-directional. You don't need to lock in your direction in week one, but by the time you finish the intermediate phase you should have a lean. The three most common paths are web development (Django or Flask), data and analytics (pandas and NumPy), and automation (scripting, APIs, browser automation with Playwright). AI engineering is a fourth path for people who want to build products on top of LLMs. Pick the CTA below that matches your goal.

What to learn: one path deeply: Django/Flask for web, pandas/NumPy for data, scripting and APIs for automation, or LLM tooling for AI engineering.

intermediate
6 weeks

Web Dev: Django/Flask

Build web applications and APIs with Python's popular web frameworks.

intermediate
6 weeks

Data: pandas & NumPy

Load, clean, analyze, and visualize data with the data science stack.

intermediate
4 weeks

Automation: scripts & bots

Automate tasks with Python scripts, web scraping, and API integrations.

Full Stack Open
Free to start

Web dev path: Python and JS full-stack

If your goal is web dev, Full Stack Open pairs backend thinking with Node.js in production. For pure Python web dev, the Django docs are the canonical resource.

Free full-stack course โ†’

Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

Kaggle Learn
Free to start

Data path: free Python and pandas

Kaggle Learn's free Python and pandas courses are short, project-based, and end in a micro-certificate. Working data scientists use them every day.

Free pandas on Kaggle Learn โ†’

Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

DeepLearning.AI
Free to start

AI engineering path: free AI courses

DeepLearning.AI's short courses (most are free) cover prompt engineering, LangChain, and building AI applications in Python. The fastest path from Python to AI engineering.

Free AI courses on DeepLearning.AI โ†’

Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

Phase 4: Professional Python

This phase turns someone who can write Python scripts into someone who can contribute to a real codebase. SQL matters because most Python applications store data in a database. Git collaboration matters because solo Git and team Git are different skills. Portfolio projects matter more than any certificate: three deployed Python projects on your GitHub will open more doors than any badge.

What to learn: SQL with Python (SQLAlchemy or psycopg2), Git for teams (PRs, code review), environment management (pyenv, poetry), writing a README, deploying a project (Railway, Fly.io, or a VPS).

intermediate
3 weeks

SQL & Databases

Query databases with Python using SQLAlchemy or psycopg2.

beginner
1 week

Git & Collaboration

Use Git professionally, write good commit messages, and work with PRs.

intermediate
6 weeks

Portfolio Projects

Build 2-3 Python projects that solve real problems and deploy them.

Coursera Python Cert

The Python for Everybody Specialization by Dr. Chuck (University of Michigan) covers Python, databases, and web scraping. Free to audit; pay only if you want the certificate. One of the most completed Python courses in the world.

Audit free on Coursera โ†’

Outbound link. We are not in this platform's affiliate program and earn nothing if you sign up. We only recommend platforms we rate.

Frequently Asked Questions

How long does it take to learn Python?

You can write useful Python scripts in two to four weeks. Getting job-ready for a Python role (web development, data analysis, or automation) takes six to ten months at ten hours per week. The language itself is fast to learn; the slower part is building the problem-solving instincts and portfolio projects that convince employers you can work independently.

Is Python a good first programming language?

Yes. Python is widely considered the best first programming language for most learners. The syntax is close to plain English, error messages are readable, and there is an enormous free learning ecosystem: CS50P (Harvard), freeCodeCamp, Kaggle, and Codecademy all teach it well. The one caveat: Python's flexibility means there are multiple valid ways to do things, which can confuse beginners who want a single right answer. Pick one learning path and follow it through.

Python for data science or web development?

Both are strong career paths; the choice depends on your interests. Data science adds pandas, NumPy, statistics, and Jupyter notebooks to your Python knowledge. Web development adds Django or Flask, databases, and deployment. If you are unsure, complete Phase 1 and 2 (core Python), then try one small project from each direction. The work itself will tell you which fits.

Do I need to learn Python 2 or Python 3?

Python 3 only. Python 2 reached end-of-life in January 2020 and is no longer maintained or updated. All modern courses, libraries, and employers use Python 3 exclusively. If you find a tutorial that uses print without parentheses (the Python 2 style), it is outdated, so find a newer resource.

What can I build with Python?

Web apps (Django, Flask, FastAPI), data pipelines, automation scripts, machine learning models, REST APIs, command-line tools, web scrapers, bots, and more. In the short term, you can build a useful automation script (something that saves you real time each week) within your first month of learning. In the longer term, Python is the primary language at DeepMind, Spotify, Instagram, Dropbox, and every major AI research lab.

Keep exploring

Languages in this roadmap

More Roadmaps