- Object-Oriented Programming (OOP) in Python
-
Overview
- Introduction to OOP in Python
- Classes and Objects
- Constructors (__init__) and Destructors
- Inheritance (Single, Multiple, Multilevel)
- Polymorphism and Method Overriding
- Encapsulation and Data Hiding
- Abstract Classes and Interfaces
- Static and Class Methods
- Magic/Dunder Methods (__str__, __repr__)
- Metaclasses in Python
- Method Resolution Order (MRO) in Python
Classes and Objects
Add to BookmarkWhat are Classes and Objects?
Object-Oriented Programming (OOP) revolves around two main concepts: classes and objects.
- Class: A blueprint or template for creating objects. It defines properties (attributes) and behaviors (methods).
- Object: An instance of a class with actual values assigned to its attributes.
Defining a Class in Python
In Python, we define a class using the class
keyword:
class Car:
def __init__(self, brand, model, year):
self.brand = brand
self.model = model
self.year = year
def display_info(self):
print(f"{self.year} {self.brand} {self.model}")
# Creating an object (instance) of the class
my_car = Car("Toyota", "Corolla", 2022)
# Accessing attributes and methods
print(my_car.brand) # Output: Toyota
my_car.display_info() # Output: 2022 Toyota Corolla
Understanding the __init__()
Method
- The
__init__()
method is a special method (constructor) that initializes an object when it is created. self
refers to the instance of the class and is used to access attributes and methods.
Creating Multiple Objects
You can create multiple objects from the same class:
car1 = Car("Honda", "Civic", 2023)
car2 = Car("Ford", "Mustang", 2021)
car1.display_info() # Output: 2023 Honda Civic
car2.display_info() # Output: 2021 Ford Mustang
Modifying Object Attributes
Attributes of an object can be modified after creation:
my_car.year = 2023
print(my_car.year) # Output: 2023
Deleting Object Attributes
You can delete an attribute using del
:
del my_car.year
Checking an Object’s Type
To check the type of an object:
print(isinstance(my_car, Car)) # Output: True
Summary
Classes define a blueprint for objects.
Objects are instances of a class.
The __init__()
method initializes objects.
Methods define behaviors, and attributes store data.
Multiple objects can be created from the same class.
Prepare for Interview
- JavaScript Interview Questions for 0–1 Year Experience
- JavaScript Interview Questions For Fresher
- SQL Interview Questions for 5+ Years Experience
- SQL Interview Questions for 2–5 Years Experience
- SQL Interview Questions for 1–2 Years Experience
- SQL Interview Questions for 0–1 Year Experience
- SQL Interview Questions for Freshers
- Design Patterns in Python
- Dynamic Programming and Recursion in Python
- Trees and Graphs in Python
- Linked Lists, Stacks, and Queues in Python
- Sorting and Searching in Python
- Debugging in Python
- Unit Testing in Python
- Asynchronous Programming in PYthon
Random Blogs
- AI Agents & Autonomous Systems – The Future of Self-Driven Intelligence
- 10 Awesome Data Science Blogs To Check Out
- Grow your business with Facebook Marketing
- AI in Marketing & Advertising: The Future of AI-Driven Strategies
- Career Guide: Natural Language Processing (NLP)
- The Ultimate Guide to Data Science: Everything You Need to Know
- 15 Amazing Keyword Research Tools You Should Explore
- Python Challenging Programming Exercises Part 3
- Window Functions in SQL – The Ultimate Guide
- Python Challenging Programming Exercises Part 1
- Exploratory Data Analysis On Iris Dataset
- Variable Assignment in Python
- Convert RBG Image to Gray Scale Image Using CV2
- Data Analytics: The Power of Data-Driven Decision Making
- SQL Joins Explained: A Complete Guide with Examples
Datasets for Machine Learning
- Amazon Product Reviews Dataset
- Ozone Level Detection Dataset
- Bank Transaction Fraud Detection
- YouTube Trending Video Dataset (updated daily)
- Covid-19 Case Surveillance Public Use Dataset
- US Election 2020
- Forest Fires Dataset
- Mobile Robots Dataset
- Safety Helmet Detection
- All Space Missions from 1957
- OSIC Pulmonary Fibrosis Progression Dataset
- Wine Quality Dataset
- Google Audio Dataset
- Iris flower dataset
- Artificial Characters Dataset