我正在解析带有日期时间字符串的JSON文件,如下所示:
"col_datetime": "10/18/2017 2:45:00 PM"
我正在使用python的datetime.strptime使其成为sqlite日期时间:
datetime.strptime(col_datetime, '%m/%d/%Y %H:%M:%S %p')
它以如下方式存储在sqlite表中:
2017-10-18 02:45:00.000000
但是当我尝试在sqlite3中使用strftime解析它时,似乎没有得到PM
strftime('%H:%M',col_datetime)
这返回到:
2:45
代替:
14:45
对此有何想法?
答案 0 :(得分:1)
您需要以%I
而不是strptime
的格式%H
使用12小时格式。
在下面的示例中,您可以看到此更改可以按预期工作:
>>> datetime.strptime('10/18/2017 2:45:00 PM', '%m/%d/%Y %H:%M:%S %p')
datetime.datetime(2017, 10, 18, 2, 45)
>>> datetime.strptime('10/18/2017 2:45:00 PM', '%m/%d/%Y %I:%M:%S %p')
datetime.datetime(2017, 10, 18, 14, 45)