This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author rhettinger
Recipients docs@python, haikuginger, rhettinger
Date 2017-11-19.17:13:33
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1511111613.39.0.213398074469.issue32070@psf.upfronthosting.co.za>
In-reply-to
Content
ISTM the current wording is correct and aims to describe how staticmethods differ from regular methods.   With a regular methods we have "c.m(*a) -> type(c).m(c, *a)" and "C.m(*a) -> C.m(*s)".  With a class method, only the first of those changes to "c.m(*a) -> type(c).m(*a)". Expressed in English, this change is "the instance is ignored except for its class...".

That said, the staticmethod() docs could use a complete rewrite.  They amble all over the place and don't directly speak to what a static method is for (attaching regular functions to classes to improve findability) or how they work (use descriptor logic to suppress the usual behavior of prepend "self" to the argument list when called from an instance) or a concise motivating example.
History
Date User Action Args
2017-11-19 17:13:33rhettingersetrecipients: + rhettinger, docs@python, haikuginger
2017-11-19 17:13:33rhettingersetmessageid: <1511111613.39.0.213398074469.issue32070@psf.upfronthosting.co.za>
2017-11-19 17:13:33rhettingerlinkissue32070 messages
2017-11-19 17:13:33rhettingercreate