2012-02-10 114 views

回答

32
>>> import time 
>>> import datetime 
>>> dt = datetime.datetime.strptime('2012-02-09', '%Y-%m-%d') 
>>> time.mktime(dt.timetuple()) 
1328774400.0 

- 或 -

>>> dt = datetime.datetime(year=2012, month=2, day=9) 
>>> time.mktime(dt.timetuple()) 
1328774400.0 

对于其他类型的时间像一小时和二去这里: https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior

+0

注意,这会给你本地时间,而不是UTC时间戳 – Willem 2015-01-22 10:55:24

0

你可以通过得到的之间的秒数做日期和时代(1970年1月1日):

from datetime import datetime 

epoch = datetime(1970, 1, 1) 
d = datetime(2012, 2, 10) 

print (d - epoch).total_seconds() 
2

您还可以使用datetime.combine()

>>> import datetime 
>>> import time 
>>> date1 = datetime.date(year=2012,day=02,month=02) 
>>> date2 = datetime.datetime.combine(date1,datetime.time()) 
>>> date2 
datetime.datetime(2012, 2, 2, 0, 0) 
>>> tstamp = time.mktime(date2.timetuple()) 
>>> tstamp 
1328121000.0 

结果取决于本地时区(在这种情况下,IST)。我希望有人能指点我如何得到GMT结果

相关问题