Why we have to use self in Python methods?

March 19, 2022

Why we have to use self in Python methods?

In this article we will learn why we have to use self in Python methods, with practical examples of everyday situations.

use self in Python methods thumb

What’s up programmer, ok? Let’s learn more about Python!

One of the reasons for self is due to Python’s philosophy of being an explicit language and this can be explained in the Python code philosophy

And this is taken very seriously throughout the language, so much so that the Python code guide is indicated in the documentation itself.

The technical side

Python was initially created for functional programming and started to have the Object Oriented paradigm

So when developers were creating these features, they decided that the first argument of each method should be the object of this method.

Conventioning that it would be called self

We can find self in other languages too, for example this in JavaScript, only it is implicit

A hidden argument that works to reference that object in question

Let’s see a practical example:

class Human:
 def __init__(self, name): = name

 def showName(self):
  print("The name is: " +

matheus = Human('Matheus')

So here self helps us both define properties referring to the object and also create methods that use a property of the object.


In this article we learned why we have to use self in Python methods

This was a choice in the language design, to make this argument that references the method object implicit.

Following the Python standard of the language, which is a philosophy divided into characteristics that can define the Python language

Want to learn more about Python? Click here!

Notify of

Inline Feedbacks
View all comments
Would love your thoughts, please comment.x