Personal solutions to the Python Common Core curriculum at 42 School, from the fundamentals to functional programming, decorators, and data validation.
This repository contains my own implementation of every exercise across the eleven modules of 42's Python Common Core, in the order they were assigned. Each module builds on the concepts introduced in the previous ones — starting from basic syntax and control flow, moving through object-oriented programming, and ending with functional programming, decorators, and modern data-validation tooling.
| Module | Topic |
|---|---|
| Module 00 | Fundamentals — variables, functions, iteration, recursion |
| Module 01 | Object-Oriented Programming — classes, encapsulation, inheritance |
| Module 02 | Exception Handling — custom exceptions, try/except/finally |
| Module 03 | Collections — lists, dictionaries, sets, tuples; generators and yield |
| Module 04 | File Handling — reading, writing, and securing file streams |
| Module 05 | Abstract Classes & Polymorphism — ABC, method overriding, duck typing |
| Module 06 | Modules & Packages — absolute/relative imports, circular dependencies |
| Module 07 | Advanced OOP Patterns — Abstract Factory, mixins, Strategy pattern |
| Module 08 | Environments & Dependencies — virtual environments, pip/Poetry, environment variables |
| Module 09 | Data Validation — structured models and validation rules with Pydantic |
| Module 10 | Functional Programming — lambdas, closures, functools, decorators |
Each module lives in its own folder, with one subfolder per exercise:
Module_XX/
└── exN/
└── exercise_name.py
Every exercise complies with:
- Python 3.10+
- flake8 coding standard
- mypy for static type checking, with comprehensive type annotations throughout
This repository is released under the MIT License. The license applies exclusively to the original content of this repository — the Python solutions and any accompanying explanations written by me —.