首页 > 解决方案 > 如何将python中的a / p(am / pm)时间值转换为24小时格式

问题描述

我正在阅读一个csv文件,它的时间字段为3:50a4:25p。我需要将此时间值转换为 24 小时制格式,H:M因为我正在这样做:

datetime.strptime(str(time_value), '%I:%M').strftime('%H:%M')

time_value在哪里。现在问题是上面的代码行不起作用,因为我没有包含其中的标签,那是因为在文件中我只是得到for和for 。3:50a4:25pAM/PM%p%I:%McsvaAMpPM

我该如何处理这种情况。我需要将 time_value 转换为 24 小时时钟格式。谢谢

标签: python-3.xtime

解决方案


将 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'

推荐阅读