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 に答える