My class example:
class Ff(float):
def __str__(self):
return '{:.2f}'.format(self) + '$'
a = Ff(1)
print(type(a))
print(a)
Return:
<class '__main__.Ff'>
1.00$
But in case:
a = Ff(1) + 2
print(type(a))
print(a)
Return:
<class 'float'>
3.0
How to in case add Ff(1) + 2
or for radd 2 + Ff(1)
get same <class 'main.Ff'> in result?