2

Fraction クラスの例に出くわしましたが、これら 2 つのメソッドの違いがよくわかりません。一度__str__実装したら冗長にならないshow

def __str__(self):
    return str(self.num)+"/"+str(self.den)

def show(self):
    print(self.num,"/",self.den)

クラスの文字列バージョンを必要とするコンテキストを処理する実装の魔法のメソッドであることがわかり__str__ましshow(self)メソッドのポイントがわからないだけですか?


編集

ほとんどのクラスが必要とする一般的なメソッドを表示しますか?
私の問題は、分数 x がある場合、インスタンスが保持するものprint(x)を確認するだけでよいということです。1\2show

4

3 に答える 3

3

__str__オブジェクトが文字列として扱われるたびに呼び出される魔法のメソッドです。たとえば、str(fraction_instance)

于 2013-10-19T08:28:15.210 に答える