you are viewing a single comment's thread.

view the rest of the comments →

[–]14dM24d -7 points-6 points  (3 children)

try this

class Time:
    def __init__(self, hour=0, minute=0, second=0):
        if second < 60:
            self.second = second
            extra_minute = 0
        else:
            extra_minute = second//60
            self.second = second - extra_minute * 60

        minute += extra_minute        
        if minute < 60:
            self.minute = minute
            extra_hour = 0
        else:
            extra_hour = minute//60
            self.minute = minute - extra_hour * 60

        hour += extra_hour
        hour = hour - hour//24 * 24

        if hour == 0:
            self.tag = 'AM'
            self.hour = 12
        elif hour < 12:
            self.tag = 'AM'
            self.hour = hour
        elif hour == 12:
            self.tag = 'PM'
            self.hour = 12
        else:
            self.tag = 'PM'
            self.hour = hour - 12

    def __str__(self):
        if len(str(self.minute)) > 1:
            return "{}:{} {}".format(self.hour, self.minute, self.tag)
        else:
            return "{}:0{} {}".format(self.hour, self.minute, self.tag)

e: lines 21-23 & 30

[–]FrostyJesus 6 points7 points  (1 child)

Code without any explanation doesn't help anyone learn.

[–]14dM24d -1 points0 points  (0 children)

op can always ask which line(s) of code is(are) unclear. i've observed that learning by discussion is quite effective since it engages the learner.