Welcome to the OOP in Python repository!
This repo is a focused guide to Object-Oriented Programming using Python — from core concepts to real-world examples and practice problems.
- What is OOP?
- Benefits of OOP in Python
- Difference between Class and Object
- Attributes vs Behaviors
- Classes and Objects
__init__()
Constructor- Instance and Class Variables
- Instance, Class, and Static Methods
self
Keyword Explained
- Inheritance
- Polymorphism
- Encapsulation
- Abstraction
super()
Function- Method Overriding
- Dunder (Magic) Methods like
__str__
,__repr__
,__len__
- Composition vs Inheritance
- Bank Account Class
- Library Management System
- Student-Teacher System
- Car & Vehicle Hierarchy
- Task-based programs using OOP
- Mini Projects using real-world use cases
- Interview-based class design questions
This repository is part of my structured path to become a top Machine Learning / AI Engineer.
Mastering OOP is essential for writing scalable, maintainable Python code, especially in real-world ML/AI projects.
This repo is perfect for:
- Beginners learning Python OOP from scratch
- Intermediate developers improving design skills
- Anyone preparing for coding interviews
- Explore each folder for topic-wise examples
- Run and modify code to learn by doing
- Use projects to apply your knowledge
Feel free to:
- ⭐ Star this repository
- 🛠 Open issues for bugs, suggestions, or help
- 📥 Submit pull requests with improvements or your own OOP tasks
Made with ❤️ by Mirza Yasir Abdullah Baig
📎 Connect on LinkedIn