weixin_44991176 2019-04-28 16:57 采纳率: 0%
浏览 1537

python用dict计算时间差

如果使用字典描述一个时间,例如t={“hour”:12,“minute”:23,“second”:34}
时间为“12:23:34”,设计一个函数inerval(t1,t2),计算t1,t2的时间差
返回相同的结构的一个字典时间

  • 写回答

3条回答 默认 最新

  • 流泪熊猫头 2019-04-28 19:59
    关注

    写了个简单的实现。把t1、t2转为总秒数,再分别计算时、分、秒:

    def inerval(t1, t2):
        time1 = t1['hour'] * 3600 + t1['minute'] * 60 + t1['second']
        time2 = t2['hour'] * 3600 + t2['minute'] * 60 + t2['second']
        second = abs(time1-time2) % 60
        hour = (abs(time1-time2) - second) // 3600
        minute = (abs(time1-time2) - second - hour * 3600) // 60
        return {'hour': hour, 'minute': minute, 'second': second}
    
    
    t1 = {'hour': 10, 'minute': 0, 'second': 0}
    t2 = {'hour': 12, 'minute': 30, 'second': 30}
    print(inerval(t1, t2))
    
    
    评论

报告相同问题?