16

假设我在 Python 3 中有一个基本类,它代表一些类似数字的数据类型。我想这样做,所以当我有这个类的实例 x 时,我可以调用 int(x) 并让它调用我的转换函数来返回整数部分。

我敢肯定这很简单,但我似乎无法找到如何去做。

4

2 回答 2

25

__int__您可以按照以下示例覆盖魔术方法...

class Test:
    def __init__(self, i):
        self.i = i
    def __int__(self):
        return self.i * 2

t = Test(5)
print( int(t) )
# 10
于 2012-07-20T08:17:15.623 回答
8

覆盖__int__()方法。

于 2012-07-20T08:11:36.013 回答