Special Offer - Enroll Now and Get 2 Course at ₹25000/- Only Explore Now!

All Courses
Init in Python

Init in Python

January 7th, 2020

Init in Python

init is reserved python keyword. we are treating this keyword for creating default class constructor in python. it works with classes, __init__() is a special method of a class that initializes the variables.
__init__() method is default method which will be called whenever an object of the class is created.__init__(<reference to an object >) takes at least 1 argument by default, it is essential to pass the argument as object reference when we create __init__ function inside a class
Syntax :

__init__(<reference to an object >): <reference to an object>.<variable-name>=<value>
Example 1:   
class A: def __init__(self): self.a=10
In the above example, we have created class A which consists of __init__(self) function. Here we are initializing
self.a to 10 Object=A()
In the above code, we are calling an object for class A with name “Object” & we are using class reference A to access
__init__(self) which is defined in class A. This method is creating an object of class A named “Object” and calling
__init__(self) where ”self” in a reference to an object instance and it initializes self.a to 10

__init__() with multiple arguments

__init__() function, 1 argument is always treated as a reference to an object and rest of arguments which are passed are consider as initialization parameters
Syntax :

__init__(<reference to an object >[,param1,param2…paramn]):
<reference to an object>.<variable-name-param1>=param1
<reference to an object>.<variable-name-param2>=param2 . . .
<reference to an object>.<variable-name-paramn>=paramn
Example 2:
class A : def __init__(self, x, y): self.x=x self.y=y obj=A(10,20) obj.x obj.y

In the above example, we are passing x & y arguments along with first object reference ”self”. In __init__() function “x” and “y” are assigned to “self.x” and “self.y”
When we are creating an object of class A named “obj”, it is calling __init__() method via class constructor call “A(10,20)”.Here we are passing actual values “10” & “20” to __init__() methods arguments “x” & “y” respectively. We have defined __init__() method definition as below

def __init__(self, x, y): self.x=x self.y=y
where , self .x = x =10  and self.y=y=20 , here initialization is achieved with multiple parameters. Let’s see more examples to understand in depth.
# Create class Human which will initialize values like “Height” and “Weight”
class Human: def __init__(self): self.height=5.6 self.weight=65 obj = Human() print(obj.height) print(obj.weigh
Output :
c:/users/421209/Documents/!Python/programs>A.py 5.6 65
# Create a class Rectangle which will take length and breadth values in the class constructor call
class Rectangle: def __init__(self,length,breadth): self.length=length self.breadth=breadth obj = Rectangle(10,20) print(obj.length) print(obj.breadth)
Output:
c:/users/421209/Documents/!Python/programs>A.py 10 20

Related Blogs