roundFloat2.py
class RoundFloatManual(object):
def __init__(self,val):
assert isinstance(val,float),\
"value must be a float!"
self.value=round(val,2)
def __str__(self):
return '%.2f' % self.value
__repr__=__str__
>>> rfm=RoundFloatManual(4.15469)
>>> rfm
4.15
>>> rfm=RoundFloatManual(34)
Traceback (most recent call last):
File "<interactive input>", line 1, in ?
File "C:\Users\soberchallen\Documents\roundFloat.py", line 3, in __init__
assert isinstance(val,float),\
AssertionError: value must be a float!
time60.py
class Time60(object):
'Time60-track hours and minutes'
def __init__(self,hr,min):
'Time60 constructor-takes hours and minutes'
self.hr=hr
self.min=min
def __str__(self_):
'Time60 - string representation'
return '%d:%d' %(self.hr,self.min)
__repr__=__str__
def __add__(self,other):
'Time60 - overloading the addition operator'
return self.__class__(self.hr+other.hr,
self.min+other.min)
def __iadd__(self,other):
'Time60 - overloading in-place addition'
self.hr+=other.hr
self.min+=other.min
return self