An intermediate-to-advanced Python reference repo — 20+ topic folders covering decorators, OOP, closures, memory management, APIs, SQLite, MongoDB, and 50+ practice exercises.
This goes where most Python tutorials stop. Less "how to print hello world", more "how decorators actually work", "what mutable vs immutable means for your code", and "how to build a real CRUD app with both SQL and NoSQL databases."
| Folder | Topic | What's Covered |
|---|---|---|
01_basics |
Fundamentals | Data types, object types, Python internals |
02_boolean |
Booleans | Truthy/falsy values, boolean logic |
Numbers |
Numbers | Precision, math operations, decimal module |
String |
Strings | f-strings, formatting, string methods |
List |
Lists | Operations, comprehensions, advanced patterns |
Dictionary |
Dictionaries | Methods, patterns, dict comprehensions |
Tuples |
Tuples | Immutable sequences, unpacking, type checks |
set |
Sets | Set theory, operations, deduplication |
muteableVsimmutable |
Mutability | Deep dive into mutable vs immutable objects |
| Folder | Topic | What's Covered |
|---|---|---|
10_loops |
Loops | for/while, comprehensions, iteration |
10_Conditionals |
Conditionals | if/else, match-case |
10_functions |
Functions | args, kwargs, lambdas, default params |
bts_in_loops |
Iterator Protocol | How iteration works under the hood |
| Folder | Topic | What's Covered |
|---|---|---|
Decoraters |
Decorators | @timer, @debug, @cache — production-ready patterns |
scope_and_clousers |
Closures & Scope | Lexical scope, closure examples, nonlocal |
OOP |
OOP | Classes, inheritance, polymorphism, Car and ElectricCar example |
Error_handling |
Error Handling | try/except, custom exceptions, real project |
inner-working |
Memory & Internals | Memory management, reference counting, execution model |
| Folder | Topic | What's Covered |
|---|---|---|
Api_handling |
API Integration | requests, JSON parsing, random user API |
youtube_manager |
YouTube Manager App | Full CRUD app — SQLite and MongoDB implementations |
practise |
Practice Exercises | 50+ coding challenges across all topics |
git clone https://github.com/Wcoder547/beyond-basics-python.git
cd beyond-basics-python
pip install -r requirements.txt # requests, pymongoNavigate to any folder and run the script:
cd Decoraters
python decorators.pyNo virtual environment required, but recommended:
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txtWork through topics in this order for the best progression:
Week 1 — Data Structures
01_basics → Numbers → String → List → Dictionary → Tuples → set → muteableVsimmutable
Week 2 — Control Flow & Functions
10_loops → 10_Conditionals → 10_functions → bts_in_loops
Week 3 — Advanced Functions
scope_and_clousers → Decoraters
Week 4 — OOP & Error Handling
OOP → Error_handling → inner-working
Week 5 — Real-World Applications
Api_handling → youtube_manager → practise
Already know the basics? Jump straight to Decoraters, scope_and_clousers, or inner-working.
A full CRUD application for managing YouTube video records — built twice:
- SQLite version — relational, file-based, zero setup
- MongoDB version — document-based, using
pymongo
Great for seeing the same business logic implemented against two completely different database paradigms.
Three production-ready decorators:
@timer— measures function execution time@debug— logs function calls with arguments and return values@cache— simple memoization for expensive functions
50+ exercises spanning all topics. Work through them after each module or use them to test your understanding before moving on.
| Layer | Technology |
|---|---|
| Language | Python 3.11+ |
| HTTP | requests |
| Databases | SQLite (sqlite3), MongoDB (pymongo) |
| Utilities | functools, time, json, sys |
Python is easy to get started with and surprisingly deep to master. This repo was built to cover the depth — the parts that make you a better Python developer, not just a Python user: how decorators work as first-class functions, what closures capture and why, how Python's memory model handles mutable objects, and how the iterator protocol powers every for loop you've ever written.
The youtube_manager folder alone is worth cloning the repo for — building the same CRUD app against SQLite and MongoDB side by side makes the tradeoffs between relational and document databases concrete rather than theoretical.
Built by Waseem Akram — Full-Stack Developer and DevOps Engineer based in Pakistan, working across the MERN stack, Generative AI integrations, and cloud automation.
If this helped you, consider giving it a ⭐