python-3.x - 如何将python中的a / p(am / pm)时间值转换为24小时格式
问题描述
我正在阅读一个csv
文件,它的时间字段为3:50a
和4:25p
。我需要将此时间值转换为 24 小时制格式,H:M
因为我正在这样做:
datetime.strptime(str(time_value), '%I:%M').strftime('%H:%M')
或time_value
在哪里。现在问题是上面的代码行不起作用,因为我没有包含其中的标签,那是因为在文件中我只是得到for和for 。3:50a
4:25p
AM/PM
%p
%I:%M
csv
a
AM
p
PM
我该如何处理这种情况。我需要将 time_value 转换为 24 小时时钟格式。谢谢
解决方案
将 an 添加'm'
到您输入的字符串strptime
并将%p
其放入第二个参数中,
>>> from datetime import datetime
>>> time_value = '3:50a'
>>> datetime.strptime(str(time_value)+'m', '%I:%M%p').strftime('%H:%M')
'03:50'
>>> time_value = '4:25p'
>>> datetime.strptime(str(time_value)+'m', '%I:%M%p').strftime('%H:%M')
'16:25'