将字符串转换为日期时间格式时格式不匹配

时间:2020-10-03 11:48:50

标签: python-3.x datetime

我的目标是将字符串转换为日期时间格式。字符串格式为2020-10-02 09:00:00.000 我尝试了以下方法,但都给了我格式不匹配的错误。

timerangestart = "2020-10-02 09:00:00.000"
timerangestart = timerangestart[:-4]
my_time = datetime.strptime(timerangestart, '%y-%m-%d %H:%M:%S')

timerangestart = "2020-10-02 09:00:00.000"
timerangestart = timerangestart + "000"
my_time = datetime.strptime(timerangestart, '%y-%m-%d %H:%M:%S.%f')

ValueError: time data '2020-10-02 09:00:00' does not match format '%y-%m-%d %H:%M:%S'

我做错了什么?

1 个答案:

答案 0 :(得分:1)

您的%y是错误的。应该是%Y

尝试一下:

from datetime import datetime

timerangestart = "2020-10-02 09:00:00.000"
timerangestart = timerangestart[:-4]
my_time = datetime.strptime(timerangestart, '%Y-%m-%d %H:%M:%S')
print(my_time)

timerangestart = "2020-10-02 09:00:00.000"
timerangestart = timerangestart + "000"
my_time = datetime.strptime(timerangestart, '%Y-%m-%d %H:%M:%S.%f')

print(my_time)

输出:

2020-10-02 09:00:00
2020-10-02 09:00:00

Here'sstrftime()格式的便捷参考表。

相关问题