À l'égard de python, il n'y a rien de spécial à propos de self
. Vous pouvez utiliser this
à la place si vous voulais:
Voici un exemple:
>>> class A(object):
... def __init__(this):
... this.x = 3
...
>>> a = A()
>>> a.x
3
Bien que vous pouvez nommer comme vous le souhaitez, self
est la convention pour le premier argument d'une fonction de classe. Découvrez le paragraphe 5 de l'article 9.4 de la documentation python, qui dit:
Souvent, le premier argument de la méthode est appelée auto. Ce n'est rien
plus que d'une convention: le nom de l'auto n'a absolument rien de spécial
sens de Python. Notez, cependant, qu'en ne suivant pas la convention
votre code peut être moins lisible pour d'autres programmeurs Python, et il est
également concevable qu'une classe programme de navigateur peut-être écrit que
s'appuie sur une convention.
Comme pour la convention, il a commencé en Smalltalk, mais est également utilisé dans Object Pascal, Python, Ruby, Objective-C. Cette réponse a une bonne explication.