我得到的答案是其余的Epoch时间格式
start_time = 1234566
end_time = 1234578
Run Code Online (Sandbox Code Playgroud)
我想在MySQL格式时转换那个纪元秒,这样我就可以在MySQL数据库中存储差异.
我试过了:
>>> import time
>>> time.gmtime(123456)
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=2, tm_hour=10, tm_min=17, tm_sec=36, tm_wday=4, tm_yday=2, tm_isdst=0)
Run Code Online (Sandbox Code Playgroud)
以上结果不是我所期待的.我希望它像
2012-09-12 21:00:00
Run Code Online (Sandbox Code Playgroud)
请建议我如何实现这一目标?
另外,为什么我收到TypeError: a float is required了
>>> getbbb_class.end_time = 1347516459425
>>> mend = time.gmtime(getbbb_class.end_time).tm_hour
Traceback (most recent call last):
...
TypeError: a float is required
Run Code Online (Sandbox Code Playgroud) python(或pytz)中是否存在跨平台功能,它返回tzinfo与当前在计算机上设置的时区对应的对象?
环境变量不能指望,因为它们不是跨平台的
在下面的代码中,我正在计算现在的纪元和当天纪元的开始.
import time
import pytz
from datetime import datetime
tz1 = pytz.timezone('CST6CDT')
utc = pytz.timezone('UTC')
now = pytz.UTC.localize(datetime.utcnow())
now_tz = now.astimezone(tz1)
print now_tz
print now_tz.strftime('%s')
begin_day = now_tz.replace(hour=0, minute=0, second=0)
print begin_day
print begin_day.strftime('%s')
Run Code Online (Sandbox Code Playgroud)
打印声明:
2012-08-28 13:52:21.595718-05:00
1346187141
2012-08-28 00:00:00.595718-05:00
1346137200
Run Code Online (Sandbox Code Playgroud)
使用CDT时区将时期转换为时间戳:1346187141 - 2012年8月28日15:52:21,1346137200 - 2012年8月28日02:00:00
我希望第二个时代开始,但现在是凌晨2点.在转换为纪元时,它看起来仍然使用本地时区PST.
我究竟做错了什么 ?或者这可以用不同的方式完成吗?
谢谢!