首页 文章

在python中添加两个datetime.datetime.strptime() . time()对象

提问于
浏览
1

我想以“HH:MM:SS”格式添加两个时间值t1和t2 .

t1 ='12:00:00'
t2='02:00:00'

t1+t2 应为 14:00:00

我试过 t1+t2 . 但由于 t1t2 是im字符串格式,输出是串联 12:00:00 02:00:00 .

所以我试着在datetime.datetime.strptime() . time()对象中进行转换

t1 = datetime.datetime.strptime('12:00:00', '%H:%M:%S').time()
t2 = datetime.datetime.strptime('02:00:00', '%H:%M:%S').time()

但是给出了错误

TypeError:不支持的操作数类型:'datetime.time'和'datetime.time'

我怎样才能让它发挥作用?

enter image description here

1 回答

  • 1

    您不能直接添加两个 time() 变量 . 这是因为这些时间变量不是持续时间 . 他们是一天中的时间 . 但是,您可以通过从时间变量中减去午夜将时间变量转换为持续时间 .

    Test Code:

    import datetime as dt
    t1 = dt.datetime.strptime('12:00:00', '%H:%M:%S')
    t2 = dt.datetime.strptime('02:00:00', '%H:%M:%S')
    time_zero = dt.datetime.strptime('00:00:00', '%H:%M:%S')
    print((t1 - time_zero + t2).time())
    

    Results:

    14:00:00
    

相关问题