Python timestamp from day, month, year
是否可以使用日期对象中的日,月和年创建Python时间戳(秒数)? 我基本上在寻找午夜的时间戳(小时,分钟和秒都是0)。
谢谢!
1 2 3 4 5 | >>> import time >>> import datetime >>> dt = datetime.datetime.strptime('2012-02-09', '%Y-%m-%d') >>> time.mktime(dt.timetuple()) 1328774400.0 |
- 要么 -
1 2 3 | >>> 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
你也可以使用datetime.combine()
1 2 3 4 5 6 7 8 9 | >>> 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结果
您可以通过获取日期和纪元(1970年1月1日)之间的秒数来实现:
1 2 3 4 5 6 | from datetime import datetime epoch = datetime(1970, 1, 1) d = datetime(2012, 2, 10) print (d - epoch).total_seconds() |