I want the code to stop working and return that the input time(hour) etc. is invalid as it is not between 1-24. However due to str statement of the class the invalid time still prints out. Is there anyway to show error without printing out the invalid time. I tried using try/except and assert to give error.
class clock():
def __init__(self,hour, minute, second):
self.hour=hour
self.minute=minute
self.second=second
def __str__(self):
return str (self.hour)+":" + str(self.minute)+":"+str(self.second)
Don't ever allow invalid states to exist.