๐Ÿ Learn Python 3 Programming

Python is a high-level, dynamically-typed, general-purpose programming language celebrated for its readable syntax, powerful standard library, and massive ecosystem across web development, backend APIs, data science, machine learning, and automation.

๐ŸŸข Beginner to Advanced: Start with Python 3 setup, master dynamic typing, data structures (Lists, Tuples, Sets, Dicts), functions, list comprehensions, OOP, decorators, generators, Exception handling, File I/O, JSON, CSV, Type Hints, Dataclasses, testing (unittest), virtual environments (venv), and capstone mini projects.

๐Ÿ“– What You Will Learn

  • Setting up Python 3 interpreters, REPL interactive shell, and executing .py scripts
  • Dynamic typing, variable scope, f-string formatting, and I/O (input() and print())
  • Control flow, modern Truthiness rules, if...elif...else, loops (for, while), and for...else
  • Functions, positional vs keyword arguments, *args, **kwargs, closures, and LEGB scope rules
  • Data structures: Lists, Tuples, Sets, Dictionaries, String methods, and List Comprehensions
  • Modules, packages, imports, standard library (math, random, sys, os), and if __name__ == "__main__":
  • Context managers (with open(...)), File I/O, JSON serialization, and CSV processing
  • Exception handling (try, except, else, finally), custom exception classes
  • Object-Oriented Programming (OOP): Classes, __init__, self, Inheritance, Encapsulation, and Duck Typing
  • Iterators, Memory-efficient Generators (yield), and Decorators (@functools.wraps)
  • Functional programming with lambda, map(), filter(), and functools.reduce()
  • Regular Expressions (re), Datetime API (datetime), Type Hints, and Dataclasses (@dataclass)
  • Automated unit testing (unittest), debugging (breakpoint() / pdb), venv, pip, and PEP 8 best practices

๐Ÿ“š Lessons & Syllabus

# Topic Level Link
01 Set Up Python Development Environment ๐ŸŸข Beginner Open lesson
02 Introduction to Python 3 ๐ŸŸข Beginner Open lesson
03 Variables and Data Types ๐ŸŸข Beginner Open lesson
04 Input and Output in Python ๐ŸŸข Beginner Open lesson
05 Operators and Expressions ๐ŸŸข Beginner Open lesson
06 Conditional Decision Making in Python ๐ŸŸข Beginner Open lesson
07 Loops in Python (for, while, range, else) ๐ŸŸข Beginner Open lesson
08 Functions in Python ๐ŸŸข Beginner Open lesson
09 Lists in Python ๐ŸŸข Beginner Open lesson
10 Tuples in Python ๐ŸŸข Beginner Open lesson
11 Sets in Python ๐ŸŸข Beginner Open lesson
12 Dictionaries in Python ๐ŸŸข Beginner Open lesson
13 Strings and Text Processing ๐ŸŸข Beginner Open lesson
14 List Comprehensions in Python ๐ŸŸก Intermediate Open lesson
15 Advanced Functions (*args, **kwargs, Closures) ๐ŸŸก Intermediate Open lesson
16 Modules and Packages in Python ๐ŸŸก Intermediate Open lesson
17 File Handling in Python ๐ŸŸก Intermediate Open lesson
18 Exception Handling in Python ๐ŸŸก Intermediate Open lesson
19 Object-Oriented Programming (OOP) ๐Ÿ”ด Advanced Open lesson
20 Iterators and Generators ๐Ÿ”ด Advanced Open lesson
21 Decorators in Python ๐Ÿ”ด Advanced Open lesson
22 Lambda, Map, Filter, and Reduce ๐Ÿ”ด Advanced Open lesson
23 Regular Expressions (re Module) ๐ŸŸก Intermediate Open lesson
24 Working with Dates and Time ๐ŸŸก Intermediate Open lesson
25 JSON and Data Serialization ๐ŸŸก Intermediate Open lesson
26 Working with CSV Files ๐ŸŸก Intermediate Open lesson
27 Type Hints and Dataclasses ๐ŸŸก Intermediate Open lesson
28 Testing and Debugging in Python ๐ŸŸก Intermediate Open lesson
29 Virtual Environments and Package Management ๐ŸŸก Intermediate Open lesson
30 Project Structure and PEP 8 Best Practices ๐ŸŸก Intermediate Open lesson
31 Capstone Python Mini Projects ๐Ÿ”ด Advanced Open lesson
32 Asynchronous Programming (asyncio, async & await) ๐Ÿ”ด Advanced Open lesson

๐ŸŽฏ Suggested Learning Flow

01โ€“08 Python Fundamentals โ†’ 09โ€“14 Data Structures & Comprehensions โ†’ 15โ€“18 Advanced Functions, Modules & Files โ†’ 19โ€“22 OOP, Generators, Decorators & Functional Tools โ†’ 23โ€“27 Data Processing, Regex, JSON, CSV & Dataclasses โ†’ 28โ€“31 Testing, Virtual Environments, PEP 8 & Mini Projects

๐Ÿงช Practice Routine

  1. Read the lesson explanation, study the analogy, and analyze the Python code example.
  2. Run every code example using python3 script.py or py script.py.
  3. Experiment by tweaking parameters, testing null/falsy inputs, and observing errors.
  4. Solve the Try It Yourself and Mini Challenge exercises.
  5. Build capstone CLI projects using virtual environments (venv).

โœ… Progress Checklist

  • I can write and execute Python scripts in REPL and terminal.
  • I understand dynamic typing, variable scope, f-strings, and type casting.
  • I can use if...elif...else, truthiness, loops (for, while), and for...else.
  • I can write functions with default args, *args, **kwargs, and closures.
  • I can manipulate Lists, Tuples, Sets, Dictionaries, Strings, and List Comprehensions.
  • I can organize code into Modules, Packages, and use standard library tools.
  • I can handle files safely using with open(), process JSON, and write CSV files.
  • I can handle exceptions using try...except...else...finally and custom exceptions.
  • I understand OOP principles: Classes, __init__, self, Inheritance, Encapsulation, and Duck Typing.
  • I can write memory-efficient Generators (yield) and Decorators (@functools.wraps).
  • I can use lambda, map(), filter(), and reduce() for functional data transformations.
  • I can validate text using Regular Expressions (re) and track dates using datetime.
  • I can write Type Hints and concise Dataclasses (@dataclass).
  • I can write automated unit tests using unittest and debug with breakpoint().
  • I can manage isolated project dependencies using venv, pip, and requirements.txt.
  • I follow PEP 8 style guidelines and clean modular project structures.

๐Ÿงญ Navigation

โ† Repository Home Start with Lesson 01 โ†’