HOME / CATALOG / PYTHON PROGRAMMING
01
ROADMAP / BEGINNER

Python Programming

26 TOPICS · 25 HOURS · BEGINNER · SCALE 1:4
START CANVAS

A comprehensive roadmap from Python basics to advanced concepts — covering syntax, data structures, OOP, functional programming, concurrency, testing, and real-world application development.


§ SYLLABUS

§ SECTION 01 · PYTHON FOUNDATIONS
  1. 01
    Setting Up Python

    Learn how to install Python, configure your development environment, and use the interactive interpreter and IDE tools effectively.

  2. 02
    Variables and Data Types

    Understand how Python handles variables, dynamic typing, and the core built-in types including integers, floats, strings, and booleans.

  3. 03
    Operators and Expressions

    Master arithmetic, comparison, logical, and bitwise operators, and understand how Python evaluates expressions and handles type coercion.

  4. 04
    Control Flow

    Learn how to direct program execution using if/elif/else statements, for and while loops, break, continue, and the walrus operator.

  5. 05
    Functions and Scope

    Understand how to define and call functions, work with parameters and return values, and grasp variable scope and closure rules in Python.

§ SECTION 02 · DATA STRUCTURES
  1. 01
    Lists and Tuples

    Learn the differences between mutable lists and immutable tuples, including indexing, slicing, comprehensions, and common patterns.

  2. 02
    Dictionaries and Sets

    Master key-value mappings with dictionaries and unique collections with sets, including their performance characteristics and use cases.

  3. 03
    String Processing

    Dive deep into string methods, formatting (f-strings, format()), encoding, regular expressions, and text manipulation techniques.

  4. 04
    Comprehensions and Generators

    Understand list, dict, and set comprehensions, generator expressions, and the yield keyword for memory-efficient iteration.

§ SECTION 03 · OBJECT-ORIENTED PROGRAMMING
  1. 01
    Classes and Objects

    Learn how to define classes, create instances, use __init__ and other special methods, and understand the relationship between classes and objects.

  2. 02
    Inheritance and Polymorphism

    Understand single and multiple inheritance, method resolution order (MRO), abstract base classes, and how polymorphism works in Python.

  3. 03
    Magic Methods and Protocols

    Master dunder methods like __repr__, __eq__, __hash__, __iter__, and __context__ to make your objects behave like built-in types.

  4. 04
    Dataclasses and NamedTuples

    Learn modern Python approaches to structured data using dataclasses, named tuples, and when to use each over regular classes.

§ SECTION 04 · FUNCTIONAL PROGRAMMING
  1. 01
    First-Class Functions

    Understand functions as objects, higher-order functions, closures, and common functional patterns like map, filter, and reduce.

  2. 02
    Decorators

    Learn how decorators work under the hood, write your own function and class decorators, and understand common use cases like caching and logging.

  3. 03
    itertools and functools

    Explore the standard library modules that provide powerful tools for functional-style programming, lazy evaluation, and function composition.

§ SECTION 05 · ERROR HANDLING AND I/O
  1. 01
    Exceptions and Error Handling

    Master try/except/finally, custom exception hierarchies, context managers, and best practices for writing robust error handling code.

  2. 02
    File I/O and Serialization

    Learn to read and write files, work with paths using pathlib, and serialize data with JSON, CSV, and pickle.

§ SECTION 06 · MODULES, PACKAGES, AND TOOLING
  1. 01
    Modules and Packages

    Understand Python's import system, create your own packages, manage namespaces, and learn about relative vs absolute imports.

  2. 02
    Virtual Environments and Dependency Management

    Learn to isolate project dependencies with venv, understand pip, requirements.txt, pyproject.toml, and modern tools like uv and poetry.

  3. 03
    Type Hints and Static Analysis

    Add type annotations to your code, understand generics and protocols, and use mypy or pyright for static type checking.

§ SECTION 07 · ADVANCED PYTHON
  1. 01
    Concurrency: Threading and Multiprocessing

    Understand the GIL, when to use threads vs processes, and how to write concurrent code using threading, multiprocessing, and concurrent.futures.

  2. 02
    Async/Await and asyncio

    Learn asynchronous programming with coroutines, the event loop, async iterators, and when async is the right choice over threads.

  3. 03
    Metaclasses and Descriptors

    Explore Python's object model in depth — how classes are created, the descriptor protocol, and when metaclasses are the right tool.

  4. 04
    Testing with pytest

    Write unit tests, use fixtures and parameterization, mock dependencies, measure coverage, and integrate tests into your development workflow.

  5. 05
    Performance and Profiling

    Profile your code, understand time and space complexity in practice, use caching, and know when to reach for C extensions or alternative implementations.