Why does class exist when we have functions? I know how to create a class but I don't understand why we need to use class.
Functions are basically a way to reuse code. They can only store what you want to do with it.
Classes can store multiple functions and variables in them. You can also create instances of classes which can store different things.
class Car: wheels = 4 def __init__(self, colour): self.colour = colour car1 = Car("red") car2 = Car("blue") print(car1.colour) # prints "red" print(car2.colour) # prints "blue" print(car1.wheels) # prints 4 print(car2.wheels) # prints 4 car2.wheels = 18 print(car1.wheels) # prints 4 print(car2.wheels) # prints 18
Car has 2 instances:
car2, and it has a two variables,
wheels. A function wouldn't be able to store all this.