In Python everything is an object. An object has zero or more methods.
Thus far you have already worked with objects. Let’s take an example:

s = [1,2,3,4]

In the above example, we have an object named s (a list). This object has the methods reverse(), append() and remove().

Related course: Complete Python Bootcamp: Go from zero to hero in Python 3

Class example

Example 1
To create new types of objects, we must define a class.

class ShoppingList:
products = []

def __init__(self):
print('Shopping list created')

def add(self, name):

def show(self):

groceries = ShoppingList()

We create an object named groceries, of the type ShoppingList.


We then use the methods add() and show().
We also defined a class named ShoppingList which has these methods defined.

Note: there is a method named init(), which is always called upon creation of an object. This is named the constructor.

Example 2
We create an object of the type car, named superCar. The superCar object has one method drive().
In addition to the the init method (also called constructor) that is called when you create new objects.

class Car:
def __init__(self):
print('Car created')

def drive(self):
print('Engine started')

superCar = Car()