What is OOP?
A way to model real-world entities using classes (blueprints) and objects (instances).
Class vs Object
Class = blueprint
Object = actual instance created from class
What is self?
The current instance of the class (the object itself).
What is inheritance?
A child class reuses and extends properties of a parent class.
What are dunder methods?
Special methods (__xyz__) that define how objects behave with built-in operations.
What is __str__ used for?
Returns a user-friendly string (used in print()).
What is __repr__ used for?
Returns a developer-friendly, unambiguous representation.
What does __eq__ do?
Defines how objects are compared using ==.
What does __len__ do?
Defines what len(obj) returns.
What is the main goal of OOP?
To organize code into reusable, structured, real-world-like objects.