我一直在尝试使用time.strptime(string1,'%H:%M')
,但没有成功
我如何获得以下内容:
Input Output
3:14AM -> 03:14
9:33PM -> 21:33
12:21AM -> 00:21
12:15PM -> 12:15
答案 0 :(得分:1)
问题要求您首先strptime
使用%I
12小时,然后为AM或PM添加指令%p
以获取时间对象; altogther '%I:%M%p'
。然后使用strftime
将时间对象格式化为字符串:
试验:
>>> tm = time.strptime('12:33AM', '%I:%M%p')
>>> time.strftime('%H:%M', tm)
'00:33'
>>> tm = time.strptime('9:33PM', '%H:%M%p')
>>> time.strftime('%H:%M', tm)
'09:33'
答案 1 :(得分:1)
使用%I
12小时,%p
使用am
或pm
,如下所示:
from datetime import datetime
for t in ["3:14AM", "9:33PM", "12:21AM", "12:15PM"]:
print datetime.strptime(t, '%I:%M%p').strftime("%H:%M")
给你以下输出:
03:14
21:33
00:21
12:15
中
答案 2 :(得分:0)
您错过了%p
(Locale相当于AM或PM)。
time.strptime(string1,'%H:%M%p')