Learning Sections show
Constructors in Python
In Python, constructors are special methods that are called when an object is created. The primary purpose of a constructor is to initialize the attributes of the class when an object is instantiated.
1. The __init__() Method
The __init__()
method is the most commonly used constructor in Python. It is called automatically when a new instance of the class is created. The __init__()
method can accept arguments to initialize the object's attributes.
Example:
# Define a class with a constructor
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def introduce(self):
return "Hello, my name is {} and I am {} years old.".format(self.name, self.age)
# Create an object of the class
person1 = Person('Alice', 30)
# Call object method
print(person1.introduce()) # Output: Hello, my name is Alice and I am 30 years old.
2. Parameterized Constructors
Constructors can be parameterized, meaning they can accept parameters to initialize the object's attributes. This allows for greater flexibility when creating objects.
Example:
# Define a class with a parameterized constructor
class Car:
def __init__(self, make, model, year):
self.make = make
self.model = model
self.year = year
def description(self):
return "{} {} ({})".format(self.make, self.model, self.year)
# Create an object of the class
car1 = Car('Toyota', 'Corolla', 2020)
# Call object method
print(car1.description()) # Output: Toyota Corolla (2020)
Constructors are a powerful feature in Python, allowing for the initialization of objects with specific attributes and ensuring that objects are in a valid state when created.