ValueError:时间数据'24:00'与格式'%H:%M'不匹配

1Up*_*1Up 2 python time datetime strptime

我在24小时转换为12小时时遇到了严重问题.

def standard_time(t):     
    t = datetime.strptime(t, "%H:%M")
    return t
Run Code Online (Sandbox Code Playgroud)

'24:00'我们吃饱了

ValueError: time data '24:00' does not match format '%H:%M'
Run Code Online (Sandbox Code Playgroud)

我也尝试使用%I(12小时)而不是%H进行转换,但每当小时数超过12时都会收到错误:

def standard_time(t):     
    t = datetime.strptime(t, "%I:%M")
    return t
Run Code Online (Sandbox Code Playgroud)

陷入困境......

ValueError: time data '13:30' does not match format '%I:%M'
Run Code Online (Sandbox Code Playgroud)

python有一个简单的24小时到12小时的转换器吗?理想情况下23:00应该放出晚上11:00和24:00不应该抛出错误!

Nil*_*esh 8

你必须付出00:00代价24:00.24小时格式的最后计数是23:59在下一个值之后00:00.

就像你有23:59,并再加上一分钟

>>> a = datetime(1900, 1, 1, 23, 59)
>>> from datetime import timedelta
>>> a + timedelta(minutes=1)
datetime.datetime(1900, 1, 2, 0, 0)
Run Code Online (Sandbox Code Playgroud)

你会得到下一个约会 00:00