Python 作为练习,重写此函数,使其不';不包含任何循环?

Python 作为练习,重写此函数,使其不';不包含任何循环?,python,python-2.7,Python,Python 2.7,我是python的初学者,正在阅读一本书,我真的无法找到这个练习的答案,它使用修饰符函数在对象属性中添加时间 def increment(time,seconds): time.seconds = time.seconds + seconds while time.seconds >= 60: time.seconds = time.seconds - 60 time.minutes = time.minutes + 1 while

我是python的初学者,正在阅读一本书,我真的无法找到这个练习的答案,它使用修饰符函数在对象属性中添加时间

def increment(time,seconds):
    time.seconds = time.seconds + seconds
    while time.seconds >= 60:
        time.seconds = time.seconds - 60
        time.minutes = time.minutes + 1
    while time.minutes >= 60:
        time.minutes = time.minutes - 60
        time.hours = time.hours + 1

在本练习中,您将秒保持在有效范围(0..59)内,然后将秒保持在有效范围(0..59)内分钟,例如:

1:29:15+10秒->1:29:25->1:29:25

1:59:40+30秒->1:59:70->1:60:10->2:00:10

您可以使用楼层划分(//)和模数(%)重写练习:


在本练习中,您将秒保持在有效范围(0..59)内,然后将秒保持在有效范围(0..59)内分钟,例如:

1:29:15+10秒->1:29:25->1:29:25

1:59:40+30秒->1:59:70->1:60:10->2:00:10

您可以使用楼层划分(//)和模数(%)重写练习:


提示:使用
/
%
。就像乘法是重复加法一样。。。重复减法是整数除法。提示:使用
/
%
。就像乘法是重复加法一样。。。重复减法就是整数除法。嗨,这个答案有用吗?嗨,这个答案有用吗?
def increment(time,seconds):
    time.seconds = time.seconds + seconds

    time.minutes = time.minutes + (time.seconds//60)
    time.seconds = time.seconds%60
    time.hours = time.hours + (time.minutes//60)
    time.minutes = time.minutes%60