How To Call A Function With Self In Python

In Python, object-oriented programming (OOP) is an approach or methodology for designing code. A crucial part of OOP is methods, which are functions that belong to a specific object or class.

When calling a method within a class, we often use the term “self” to represent the instance of the object. This tutorial will explain how to call a function with “self” in Python.

Step 1: Create a Python Class

First, let’s create a simple Python class. A class is a blueprint for creating objects and is a vital concept in OOP. Here is an example of a class, which we will name ‘Person’:

In this example, we defined a class “Person” with two properties, “name” and “age”. We used the init method to initialize these properties for any new instance of the class.

Step 2: Define a Method with Self as an Argument

Next, we will define a method within the “Person” class. Methods are similar to functions but are associated with a class. As mentioned earlier, the term “self” is used to reference the instance of the object.

In this step, we added a new method called “greet” to the “Person” class. This method will return a string with the name and age of the person.

Notice that we have added the “self” parameter inside the “greet” method, which allows accessing the instance variables (or properties) within the class.

Step 3: Create an Instance of the Class

Now, let’s create an instance of the Person class and assign it to a variable:

We have created a new instance of the “Person” class called “person_1” with the name “Alice” and age “30”. This instance is an object of the specified class.

Step 4: Call the Method and Use the Self Parameter

Finally, we can call the “greet” method on our “person_1” instance:

When running the code above, it will output the following:

Hello, my name is Alice and I am 30 years old.

Full Code

Here is the full code for this tutorial:


In this tutorial, we covered how to call a function with the “self” parameter in Python. We created a class and defined a method with “self” as its argument. We then instantiated an object of that class and called the function using the self parameter, referencing the instance of the object. Understanding how to use “self” is essential when working with classes and methods in Python.