反向Python日期时间

时间:2011-04-18 22:07:38

标签: python datetime

y=(datetime.datetime.now() ).strftime("%y%m%d")

给出'110418'

我的数据显示为'110315'和'110512',而不是尝试创建它。

如何将'110418'更改为日期时间,以便我可以减去

来自'2011-07-15'(str)

import datetime

t = datetime.datetime.today()
print type(t)

tdate =datetime.datetime.strptime('110416', '%y%m%d') 
print type(tdate)

d =t-tdate
print d  

给了我

3 days, 15:14:38.921000

我只需要“3”。

2 个答案:

答案 0 :(得分:3)

我不完全确定我理解你的问题,但如果你想将字符串解析为时间对象,你可以使用strptime:

import time
time.strptime('2011-07-15', '%Y-%m-%d')

答案 1 :(得分:2)

您可以使用strptime方法将任何字符串表示转换为日期时间对象。

以下是将上面的字符串转换为日期时间对象的示例:

import datetime

my_date = datetime.datetime.strptime('2011-07-15', '%Y-%m-%d')

现在你将拥有一个日期时间对象,可以自然地减去其他日期时间对象。

如果您要减去两个日期,Python会生成一个datetime.timedelta对象。然后,您可以在上面的示例中执行print d.days,将所有这些消除掉。

有关您可以使用日期时间库执行的操作的详细信息,请参阅:http://docs.python.org/library/datetime.html