Set Default Values for Properties in Class in Python
Set Default Values for Properties in Class
We can set default values for properties in the class definition, either by assigning the properties with the default values inside the class, or by specifying optional arguments in __init__() function definition.
In this tutorial, we shall go through these two methods and learn how to set default values for properties in a class definition.
1. Assign properties with default values
In the following program, we have Person
class with two properties: name
, age
. We assign default values for these properties name
and age
with NA
and 0
respectively.
First we create an object person1
of type Person
, and print the details. Since, we have not set the properties of this object with values, the default values would be assigned, and the same would be printed out when we call printDetails()
function on the object.
Then, we shall set the name
and age
properties for person1
with Mike
and 21
respectively. And call printDetails()
function on the person1
object.
Python Program
class Person:
name="NA"
age="0"
def printDetails(self):
print("\nPerson Details")
print("Name :", self.name)
print("Age :", self.age)
person1 = Person()
person1.printDetails()
person1.name = "Mike"
person1.age = 21
person1.printDetails()
Output
Person Details
Name : NA
Age : 0
Person Details
Name : Mike
Age : 21
2. Use named parameters in __init()__ function
As we already mentioned, we can use named parameters in __init__() function definition to set default value for the properties.
In the following program, we have Person
class with two properties: name
, age
.
We define __init__() function in the Person
class with the named parameters: name
and age
.
Python Program
class Person:
def __init__(self, name="NA", age="0"):
self.name = name
self.age = age
def printDetails(self):
print("\nPerson Details")
print("Name :", self.name)
print("Age :", self.age)
person1 = Person()
person1.printDetails()
person1.name = "Mike"
person1.age = 21
person1.printDetails()
Output
Person Details
Name : NA
Age : 0
Person Details
Name : Mike
Age : 21
Summary
In this Python Classes and Objects tutorial, we learned how to set default values for properties of a class object.