Skip to content

Repository files navigation

🐍 Python Knowledge Base

A structured, beginner-to-advanced Python learning repository — documentation, runnable examples, and real mini-projects in one place.

PythonLicensePRs WelcomeStatusStarsLast Commit


📖 Overview

Python Knowledge Base is a self-contained learning resource that takes you from print("Hello, World!") to asyncio, design patterns, REST APIs, and machine learning basics — with notes, diagrams, runnable code, and projects for every stop along the way.

Every chapter follows the same format: theory → syntax → examples → best practices → common mistakes → interview questions → exercises. Every mini-project is a small, real, working piece of software you can run today and extend tomorrow.

📌 Status note: This repository is being built incrementally, chapter by chapter, to keep quality high rather than generating shallow placeholders. See the Progress Tracker below for what's complete vs. planned.


🗺️ Learning Roadmap

flowchart LR
A[Foundations] --> B[Core Language]
B --> C[Intermediate Python]
C --> D[Concurrency & Async]
D --> E[Software Engineering]
E --> F[Applied Python]
A -.-> A1["01-04: Basics, Variables,<br/>Data Types, Operators"]
B -.-> B1["05-08: Control Flow, Functions,<br/>Modules, Packages"]
C -.-> C1["09-15: Files, Exceptions, OOP,<br/>Iterators, Generators,<br/>Decorators, Context Managers"]
D -.-> D1["16-18: Threading,<br/>Multiprocessing, Asyncio"]
E -.-> E1["19-25: Typing, Testing, Logging,<br/>Envs, Pip, Stdlib, Patterns"]
F -.-> F1["26-30: DSA, Web,<br/>Database, API, ML"]
Loading

✅ Progress Tracker

#ChapterDocsCodeStatus
01Python BasicsComplete
02VariablesComplete
03Data TypesComplete
04OperatorsComplete
05Control Flow🚧🚧Planned
06Functions🚧🚧Planned
07Modules🚧🚧Planned
08Packages🚧🚧Planned
09File Handling🚧🚧Planned
10Exception Handling🚧🚧Planned
11OOP🚧🚧Planned
12Iterators🚧🚧Planned
13Generators🚧🚧Planned
14Decorators🚧🚧Planned
15Context Managers🚧🚧Planned
16Multithreading🚧🚧Planned
17Multiprocessing🚧🚧Planned
18Asyncio🚧🚧Planned
19Typing🚧🚧Planned
20Testing🚧🚧Planned
21Logging🚧🚧Planned
22Virtual Environments🚧🚧Planned
23Pip🚧🚧Planned
24Standard Library🚧🚧Planned
25Design Patterns🚧🚧Planned
26DSA🚧🚧Planned
27Web🚧🚧Planned
28Database🚧🚧Planned
29API🚧🚧Planned
30Machine Learning🚧🚧Planned

Legend: ✅ Complete · 🚧 Skeleton exists, content planned · Folder structure for all 30 chapters already exists in docs/ and src/.


📂 Chapter Directory

Click to expand full chapter list
RangeThemeChapters
01–04FoundationsPython Basics, Variables, Data Types, Operators
05–08Core LanguageControl Flow, Functions, Modules, Packages
09–15Intermediate PythonFile Handling, Exception Handling, OOP, Iterators, Generators, Decorators, Context Managers
16–18ConcurrencyMultithreading, Multiprocessing, Asyncio
19–25Software EngineeringTyping, Testing, Logging, Virtual Environments, Pip, Standard Library, Design Patterns
26–30Applied PythonDSA, Web, Database, API, Machine Learning

🚀 Project Showcase

LevelProjectDescriptionStatus
BeginnerCalculatorCLI calculator with a clean expression parser
BeginnerNumber Guessing GameInteractive guessing game with difficulty levels
BeginnerPassword GeneratorConfigurable secure password generator🚧
BeginnerRock Paper ScissorsClassic game vs. computer🚧
BeginnerUnit ConverterMulti-category unit conversion CLI🚧
BeginnerTodo CLIPersistent command-line todo list🚧
IntermediateExpense TrackerTrack and categorize expenses with reports🚧
IntermediateWeather AppLive weather via public API🚧
IntermediateWeb ScraperScrape and structure web data🚧
IntermediateFile OrganizerAuto-organize files by type/date🚧
IntermediateMarkdown ConverterMarkdown → HTML converter🚧
IntermediateImage RenamerBatch rename/organize images🚧
IntermediateCSV AnalyzerAnalyze and summarize CSV datasets🚧
IntermediateFlashcard AppSpaced-repetition flashcard CLI🚧
AdvancedREST API (FastAPI)Full CRUD REST API🚧
AdvancedTask ManagerMulti-user task manager backend🚧
AdvancedChat ServerSocket-based multi-client chat server🚧
AdvancedAutomation ToolkitScripting utilities for common automation🚧
AdvancedSQLite CRUD AppFull SQLite-backed CRUD app🚧
AdvancedMultithreaded DownloaderConcurrent file downloader🚧

🌳 Repository Structure

Python-Knowledge-Base/
├── README.md
├── LICENSE
├── requirements.txt
├── .gitignore
├── docs/ # Markdown notes, one folder per chapter
│ ├── 01_python_basics/
│ ├── 02_variables/
│ ├── ...
│ └── 30_machine_learning/
├── src/ # Runnable example code, mirrors docs/
│ ├── 01_python_basics/
│ ├── 02_variables/
│ ├── ...
│ └── 30_machine_learning/
├── projects/ # Mini-projects
│ ├── beginner/
│ ├── intermediate/
│ └── advanced/
└── assets/ # Diagrams, screenshots
├── diagrams/
└── screenshots/

⚙️ Installation

git clone https://github.com/your-username/Python-Knowledge-Base.git
cd Python-Knowledge-Base

Virtual Environment Setup

# Create the environment
python3 -m venv venv
# Activate itsource venv/bin/activate # macOS / Linux
venv\Scripts\activate # Windows# Install dependencies
pip install -r requirements.txt

Running Examples

Every script in src/ is standalone and runnable:

python src/01_python_basics/hello_world.py

Running Tests

pytest

📚 Documentation

Each chapter in docs/ follows a consistent structure: introduction, theory, syntax, examples, diagrams (Mermaid), best practices, common mistakes, interview questions, exercises, and further reading. Start at docs/01_python_basics and work forward, or jump to whatever chapter you need.


🔭 Future Roadmap

  • Complete docs + code for chapters 04–30
  • Build out remaining 18 mini-projects
  • Add a searchable glossary and FAQ
  • Add a cheat-sheet PDF export
  • Add CI (lint + test) via GitHub Actions
  • Add solutions branch for exercises

🤝 Contributing

Contributions are welcome. To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/chapter-04-operators)
  3. Follow the existing chapter format (see Documentation Format)
  4. Ensure all code passes ruff and mypy
  5. Open a pull request

📄 License

This project is licensed under the MIT License.


👤 Author

Maintained by Aryan — competitive programmer and full-stack developer. LeetCode: aryanexe07


📎 Resources


📊 GitHub Statistics

GitHub StatsTop Languages

About

Beginner-to-advanced Python learning repo with docs, runnable examples, and mini-projects for every chapter — from basics to asyncio, design patterns, and APIs.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages