2011-10-24 50 views
2

我需要这个结果转换成时间戳:如何使用Python将日期转换为时间戳?

>>> print (datetime.date(2010, 1, 12) + datetime.timedelta(days = 3)) 
2010-01-15 

我需要的价值与该时间戳比较:

>>> datetime.datetime.now() 
2011-10-24 10:43:43.371294 

我怎样才能做到这一点?

回答

8

我需要这个结果转换成timestamp

import time 


mydate = datetime.date(2010, 1, 12) + datetime.timedelta(days = 3) 
time.mktime(mydate.timetuple()) 

我需要的价值与该时间戳比较:

a = datetime.datetime(2010, 1, 12) + datetime.timedelta(days = 3) 
b = datetime.datetime.now() 

a < b 
a > b 
a == b 
1
oneDate = datetime.date(2010, 1, 12) + datetime.timedelta(days = 3) 
now = datetime.datetime.now() 

首先是date,第二个是datetime。所以,如果你只是想比较的日期(日,月,年),转换第二至date

oneDate < now.date() 

回报True

+0

嗨,tahnks的答复。在尝试比较时出现错误:无法将datetime.datetime与datetime.date进行比较 –

+0

您确实需要现在调用date(),否则会出现该错误。 – Wieland

1

datetime.datetime.now()将返回其具有date()方法返回datetime.date的一个实例的datetime.datetime一个实例。然后你可以比较这个结果datetime.date(2010, 1, 12) + datetime.timedelta(days = 3)