In This Python OOPs tutorial, you will learn all about Python classes and objects along with examples. class and object are the most important part of Python Object-Oriented Programming.
In this guide, we will see how to create a class, and also we will see how to create more than one object using created class.
In previous tutorials, we have seen all about Python Object Oriented Programming concepts along with examples.
Headings of Contents
- 1 What is Python class and object?
- 2 Define a class in Python
- 3 Create an object
- 4 Docstring of class
- 5 Constructors in Python
- 6 The self Parameter
- 7 Object Methods
- 8 Modify object properties
- 9 Delete object property
- 10 Delete Object
- 11 The pass statement
- 12 Conclusion
- 13 Frequently Asked Question About Python class and object.
What is Python class and object?
Python is an Object-Oriented Programming language almost everything in python is an object. In python, the object is a collection of properties and methods that act on those data.
In Python, a class is a blueprint for creating objects.
Let’s understand the Python class and object with an appropriate example.
A class is a sketch (Prototype) of a house. It contains a description of all the floors, rooms, doors, windows, etc.
Based on this sketch of a house or prototype we can create a house. so here house is an object.
With the help of a house prototype, we can build more than one house which means we can create more than one object with the help of the class.
Define a class in Python
In Python to create a class, use the class keyword.
class myClass:
first_name = 'Programming'
last_name = 'Funda'
def fullName(self):
print(f"My full name is {self.first_name + ' ' + self.last_name}.")
In the above example, myClass is the name of the class and first_name and last_name are the properties of the class and fullName is the method of the class.
Create an object
To create a Python object of the class, use the class name with parentheses.
class myClass:
first_name = 'Programming'
last_name = 'Funda'
def fullName(self):
print(f"My full name is {self.first_name + ' ' + self.last_name}.")
obj = myClass()
obj.fullName()
print(obj.first_name)
print(obj.last_name)
Docstring of class
Docstring is documentation of the class which tells about the class.
In python, __doc__ is a special attribute that is used to access the docstring of the class.
class Profile:
"This is demo class example"
name = 'John'
age = 21
obj = Profile()
print(obj.name,obj.age)
print(Profile.__doc__)
Output
John 21
This is demo class example
Constructors in Python
A class function that begins with a double underscore (__) is called a special method which is also called a constructor.
All classes have function init(), which is automatically called when the object is instantiated.
With the help of the __init__() function, you can assign the value to object properties.
create a class Profile, and use the __doc__() function to assign the name and age.
class myClass:
def __init__(self, firstName, lastName):
self.first_name = firstName
self.last_name = lastName
def fullName(self):
print(f"My full name is {self.first_name + ' ' + self.last_name}.")
p1 = myClass('Vishvajit', 'Rao')
p1.fullName()
print(p1.first_name)
print(p1.last_name)
Output
My full name is Vishvajit Rao.
Vishvajit
Rao
The self Parameter
The self parameter is refer to the current instance of the class, and it is used to access to the variable that belongs to the class. It does not name self, you can change it whatever you like but it should be the first parameter of the function in the class.
Example:
class Person:
x = 'Python Programming'
def name(abc):
print(abc.x)
p1 = Person()
p1.name()
Output
Python Programming
Object Methods
The object can also contain methods. A method is the class method that belongs to an object.
Example
Create a class Person and also create function details that print the name and age of the person.
class Person:
def __init__(self,name,age):
self.name = name
self.age = age
def details(self):
print(self.name,self.age)
#Create p1 object-
p1 = Person('Maya', 23)
p1.details()
#Create another p2 object-
p2 = Person('Mariya', 33)
p2.details()
Output
Maya 23
Mariya 33
Modify object properties
You can change the value of the properties of the class using the object.
class Person:
def __init__(self,name,age):
self.name = name
self.age = age
def details(self):
print(self.name)
p1 = Person('Maya', 23)
p1.details()
p1.age = 40
print(p1.age)
Output
Maya
40
Delete object property
You can delete properties on objects by using the del keyword.
class Person:
def __init__(self,name,age):
self.name = name
self.age = age
def details(self):
print(self.name)
p1 = Person('Maya', 23)
del p1.age
print(p1.age)
Output
Traceback (most recent call last):
File "C:\Users\Vishvajit\Desktop\PF Article\Python Basic part1\test.py", line 13, in <module>
print(p1.age)
AttributeError: 'Person' object has no attribute 'age'
Delete Object
You can delete objects by using the del keyword.
Example:
class Person:
def __init__(self,name,age):
self.name = name
self.age = age
def details(self):
print(self.name)
p1 = Person('Maya', 23)
del p1
print(p1.details)
Output
Traceback (most recent call last):
File "C:\Users\Vishvajit\Desktop\PF Article\Python Basic part1\test.py", line 10, in <module>
print(p1.details)
NameError: name 'p1' is not defined
The pass statement
In Python class and object class can not be empty, but sometimes if you want to use an empty class then you can use a pass statement. Basically pass statement is a null statement.
Example:
class Person:
pass
Conclusion
In this guide, you have learned all about Python class and object along with appropriate examples.
If you want to learn Python programming, Then you don’t ignore Python class and object. Using Python class and object you can solve any programming problem easily.
If you like this article, please share and keep visiting for further Python tutorials.
For more reference:- Click Here
Frequently Asked Question About Python class and object.
-
What is Python class and object?
Ans:- Python is Object Oriented Programming language. Almost everything in Python is an object, with its properties and methods. A class is an object constructor or blueprint for creating an object.
-
What is the difference between Python class and object?
Ans:- A object is simply a collection of properties and methods. Class is a blueprint for creating an object.
-
What is __init__ in Python?
Ans:- In Python, __init__ is a special method or magic method. It is also called Constructor. Python __init__ method is called automatically when the object is instantiated.
-
How do you create an object of the class in Python?
Ans:- To create the object of the class, use the class name follows by the parentheses.
-
What type of language is Python?
Ans:- Python is interpreted, an object-oriented, high-level programming language with dynamic semantics.
Happy Coding
~ Vishvajit Rao