Message209064
| Author |
ncoghlan |
| Recipients |
barry, brett.cannon, gvanrossum, larry, meador.inge, ncoghlan, skrah, tim.peters, yselivanov, zach.ware |
| Date |
2014年01月24日.11:10:44 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1390561844.33.0.405488784056.issue20189@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
It doesn't act like a class method, though, it acts like a static method:
>>> int.__new__()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: int.__new__(): not enough arguments
>>> int.__new__(int)
0
You have to *write* __new__ and tp_new as if they were class methods (because the type machinery expects you to do so), but you have to *call* them like static methods if you're invoking them directly for some reason. |
|