在Python中增加时间
假设我们有一个字符串,该字符串表示后缀为am或pm的12小时制时钟时间,并且还给出了整数n,我们将在时间上加上n分钟并以相同的格式返回新时间。
因此,如果输入类似于s=“8:20pm”且n=150,则输出将为10:50pm
为了解决这个问题,我们将遵循以下步骤-
h,m:=取s的小时和分钟部分
h:=hmod12
如果时间s是“pm”,则
h:=h+12
t:=h*60+m+n
h:=t/60的商,m:=t/60的余数
h:=hmod24
后缀:='am'如果h<12否则为'pm'
h:=hmod12
如果h等于0,则
h:=12
返回时间h:m后缀
让我们看下面的实现以更好地理解-
示例
class Solution:
def solve(self, s, n):
h, m = map(int, s[:-2].split(':'))
h %= 12
if s[-2:] == 'pm':
h += 12
t = h * 60 + m + n
h, m = divmod(t, 60)
h %= 24
suffix = 'a' if h < 12 else 'p'
h %= 12
if h == 0:
h = 12
return "{:02d}:{:02d}{}m".format(h, m, suffix)
ob = Solution()print(ob.solve("8:20pm", 150))输入值
"8:20pm", 150
输出结果
10:50pm