在日期时间解析中使用当前月/日

时间:2019-04-18 16:37:22

标签: python python-3.x datetime

我正在尝试解析一个只是'07:43 PM'的字符串。我想出了strptime()函数,但是当我打印结果时,日,月和年都是错误的。它没有使用当前时间,分别使用了1、1和1900。我发现的一个简单的解决方案是只使用.replace()并用当前值替换日,月和年。我还能做些什么吗?

y = '07:43 PM'
print(datetime.strptime(y, '%I:%M %p'))  #1900-01-01 19:43:00

1 个答案:

答案 0 :(得分:2)

正如评论所说,您可以获得now时间,然后使用所需的字段更新这些字段,例如:

from datetime import datetime
y = '07:43 PM'
now, stripped = datetime.now(), datetime.strptime(y, '%I:%M %p')
now = now.replace(hour=stripped.hour, minute=stripped.minute)
print(now)