Object Oriented Programming (OOP) is a programming paradigms (i.e. model) where
programming is done using Objects. Object is an instance of a Class. A Class is a blue print or Concept or idea of an Object. Class and Objects are the key concepts of Object Oriented Programming (OOP). Every object contains some properties and methods. Properties are attributes that an object holds and methods are the actions or operations those can be performed on those attributes of that object. If the value of an attribute is changed, according to OOP it is said that the State of an object is changed. Generally, the methods are responsible to change those object states. Class is a prototype of an object that models the attributes and methods of an object. Class can not be used directly; at first, an object is to be created. The process of creating object is known as instantiation or object creation.
Python Projects for Beginners: Part 4. Object-Oriented Programming (OOP). Get an introduction to OOP concepts such as classes, objects, inheritance, and polymorphism