class Time60(object):
'Time60 - track hours and minutes'
def __init__(self, hr, min):
'Time60 initializer - 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
In [87]: thu = Time60(10, 30)
In [88]: fri = Time60(8, 45)
In [89]: thu + fri
Out[89]: 18:75