Why is cls sometimes used instead of self as an argument in python classes? Def __init__(self, firstname, lastname): Self. firstname = firstname self.

To close debugging questions where op omitted a self. By making the self reference explicit, you're free to refer to any object by that self reference. Also, such a way of playing with classes at runtime is harder to do in the more static languages - not that's it's. See why do i get 'takes exactly 1 argument (2 given)' when trying to call a method? For the opposite problem.

For the opposite problem.