A structured, project-based learning path to master Python programming in 30 days. Each day focuses on specific concepts with hands-on examples and exercises.
This curriculum is designed to take you from absolute beginner to proficient Python developer through:
| Day | Topic | Key Concepts |
|---|---|---|
| 1 | Python Basics | print(), variables, input |
| 2 | Data Types | Strings, numbers, booleans |
| 3 | Control Flow | if/elif/else statements |
| 4 | Loops | for/while, range |
| 5 | Functions | Definition, parameters, return |
| 6 | Lists & Tuples | List methods, tuple unpacking |
| 7 | Dictionaries & Sets | Key-value pairs, set operations |
| 8 | File Handling | Read/write files, context managers |
| 9 | Error Handling | try/except/finally |
| 10 | Modules | Importing, name |
| 11 | OOP Basics | Classes, objects |
| 12 | Advanced OOP | Inheritance, polymorphism |
| 13 | Built-in Functions | map, filter, reduce |
| 14 | List Comprehensions | Compact list creation |
| 15 | Decorators | Function decoration |
| 16 | Generators | yield, memory efficiency |
| 17 | Regular Expressions | Pattern matching |
| 18 | API Interaction | Requests library |
| 19 | Virtual Environments | venv, pipenv |
| 20 | Package Management | pip, requirements.txt |
| 21 | Scripting Project | Real-world automation |
| 22 | NumPy Basics | Array operations |
| 23 | Pandas Basics | DataFrames, CSV |
| 24 | Data Visualization | Matplotlib |
| 25 | Web Scraping | BeautifulSoup |
| 26 | Web Basics | Flask/Django intro |
| 27 | Databases | SQLite integration |
| 28 | Testing | Unit tests, pytest |
| 29 | Debugging | pdb, logging |
| 30 | Final Project | Full-stack application |
python --version
OR
python3 --version
If Python is installed correctly, it will show the version number.
python to open the interactive shell.exit() to quit.script.py and run: python script.py
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install python
python3 --version
If Python is installed correctly, it will show the version number.
python3 to start interactive mode.python3 script.py
sudo apt update && sudo apt install python3 python3-pip -y
sudo dnf install python3 python3-pip -y
sudo pacman -S python python-pip
python3 --version
If Python is installed correctly, it will show the version number.
python3 to start interactive mode.python3 script.py
sudo snap install --classic code # Ubuntu
OR
sudo dnf install code # Fedora
script.py.python script.pypython3 script.pyREADME.md with concept explanationsgit clone https://github.com/Zemerik/Python.git
cd Python
Code Daily: Consistent practice > marathon sessions
Experiment: Modify examples and break things
Take Notes: Document your learnings
Build Projects: Expand beyond provided examples
Join Community:
Found an issue or want to improve the content?
Fork the repository
Create your feature branch
Commit your changes
Push to the branch
Open a Pull Request
MIT License - Feel free to use and modify for personal/commercial use