PythonでOOPを学習しようとしていますが、__plus__
メソッドを上書きするために次のコードを作成しています
class Fraction(object):
'''Define a fraction type'''
def __init__(self, num=0, denom=1):
'''Create a new Fraction with numerator num and denominator demon'''
self.numerator = num
if denom != 0:
self.denominator = denom
else:
raise ZeroDivisionError
def __plus__(self, f):
num = self.numerator + f.numerator
denom = self.numerator + f.denominator
return "{0}/{1}".format(num, denom)
f = Fraction(1, 6)
print f + f#結果を2/12にしたい
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'Fraction'
しかし、それは私にエラーを与えます、私はエラーを解決する方法がわかりません、何か考えはありますか?