Я пытаюсь определить просто Fraction
класс
И я получаю эту ошибку:
python fraction.py
Traceback (most recent call last):
File "fraction.py", line 20, in <module>
f.numerator(2)
TypeError: 'int' object is not callable
Код следует:
class Fraction(object):
def __init__( self, n=0, d=0 ):
self.numerator = n
self.denominator = d
def get_numerator(self):
return self.numerator
def get_denominator(self):
return self.denominator
def numerator(self, n):
self.numerator = n
def denominator( self, d ):
self.denominator = d
def prints( self ):
print "%d/%d" %(self.numerator, self.denominator)
if __name__ == "__main__":
f = Fraction()
f.numerator(2)
f.denominator(5)
f.prints()
Я думал, что это потому, что у меня были numerator(self)
и numerator(self, n)
, но теперь я знаю, что в Python нет перегрузки методов (перегрузка функций), поэтому я переименовал в get_numerator
, но это не проблема.
Что бы это могло быть?