1

我正在尝试将字符串转换为以下格式:

Apr 18 17:19:42

到 datetime 以便我可以将当​​前时间与那个时间进行比较,看看它们是否相差一分钟。我怎么做?

4

2 回答 2

5

正如 S1R 已经指出的那样,该strptime方法就是您想要的。您还需要指定年份,因为它不包含在您的日期字符串中:

>>> import datetime
>>> s = "Apr 18 17:19:42"
>>> t = datetime.datetime.strptime(s, "%b %d %H:%M:%S")
>>> t
datetime.datetime(1900, 4, 18, 17, 19, 42)
>>> t = t.replace(year = 2012)
>>> n = datetime.datetime.now()
>>> n
datetime.datetime(2012, 4, 20, 10, 21, 42, 165657)
>>> d = n-t
>>> d.total_seconds()
147720.165657
于 2012-04-20T00:23:31.737 回答
3

strptime是您需要的,它用于将字符串更改为日期时间

所以在你的情况下,它会是;

from datetime import datetime
todaysdate = datetime.strptime('Apr 18 17:19:42', '%b %d %H:%M:%S')
于 2012-04-20T00:16:17.460 回答