具有整数仿真的Python类

具有整数仿真的Python类,第1张

具有整数仿真的Python类

您需要覆盖

__new__
,而不是
__init__

class Foo(int):    def __new__(cls, some_argument=None, value=0):        i = int.__new__(cls, value)        i._some_argument = some_argument        return i    def print_some_argument(self):        print self._some_argument

现在您的班级按预期工作:

>>> f = Foo(some_argument="I am a customized int", value=10)>>> f10>>> f + 818>>> f * 0.252.5>>> f.print_some_argument()I am a customized int

有关覆盖的更多信息,请

new
参见Python
2.2
中的Unifying类型和类。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5663241.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存