Getting rid of "self."

Roy Smith roy at
Fri Jan 7 11:36:36 EST 2005

Simon Brunning  <simon at> wrote:
>On 7 Jan 2005 08:10:14 -0800, Luis M. Gonzalez <luismgz at> wrote:
>> The word "self" is not mandatory. You can type anything you want
>> instead of self, as long as you supply a keyword in its place (it can
>> be "self", "s" or whatever you want).
>You *can*, yes, but please don't, not if there's any chance that
>anyone other than you are going to have to look at your code.
>'self.whatever' is clearly an instance attribute. 's.whatever' isn't
>clearly anything - the reader will have to go off and work out what
>the 's' object is.


If there is one coding convention which is constant through the Python
world, it's that the first argument to a class method is named
"self".  Using anything else, while legal, is just being different for
the sake of being different.

More information about the Python-list mailing list