time.strptime 和 datetime.strptime 都以 24 小时制给出结果,即使我在时间格式字符串中指定了 12 小时制。我使用了它,我注意到它不尊重我的 PM 符号(将 9PM 存储为 9AM),即使时间格式设置正确。
例子:
format = "%I:00PM"
mytime = "09:00PM"
x = time.strptime(mytime, format)
print x
输出
time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=1, tm_isdst=-1)
这是错误的!在这种情况下,tm_hour 是 9,它应该是 21。
如果我尝试
y = datetime.strptime(mytime,format)
print y
我明白了
1900-01-01 09:00:00
又是大错特错。
时间段应该是 21(晚上 9 点),而不是上午 9 点。