This would eliminate the redundant use of explicit self from the formal parameter list in methods. To close debugging questions where op omitted a self parameter for a method and got a typeerror, use typeerror Method () takes 1 positional argument but 2 were given instead In the body of the method and got a nameerror, consider how can. In this case, there are some benefits to allowing this 1) methods are just functions that happen defined in a class, and need to be callable either as bound methods with implicit self passing or as plain functions with explicit self passing
2) making classmethod s and staticmethod s means you want to be able to rename and omit self respectively. Another possibility in the neighborhood of this answer is if you declare a method as an @staticmethod and then include (or retain) self as the first positional argument. Npm self_signed_cert_in_chain asked 9 years, 10 months ago modified 4 months ago viewed 205k times Why is cls sometimes used instead of self as an argument in python classes The self is the conventional placeholder of the current object instance of a class Its used when you want to refer to the object's property or field or method inside a class as if you're referring to itself.
I guess self also works As you can see, this is exactly a case for &self If you use self (or &mut self) the method will likely still compile, but it can only be used in more restricted situations.
OPEN