是的。
python中的时间戳相减是微秒数,也就是千分之一秒。
时间戳字段在MySQL中经常使用到,比如需要记录一行数据创建的时间或修改的时间时,我们通常会使用时间戳即timestamp字段。
timestamp字段类型可存储时间类型数据,timestamp所能存储的时间范围为:'1970-01-0100:00:01.000000'到'2038-01-1903:14:07.999999'。
timestamp字段占用4个字节。在MySQL5.7版本,timestamp可以指定精度,即TIMESTAMP(fsp)中fsp可以指定一个介于0到6之间的可选值,以代表小数秒精度。值为0表示没有小数部分,如果省略,则默认精度为0。
扩展资料:
影响时间戳显示的参数主要有两个,分别是explicitdefaultsfortimestamp,timezone。
explicitdefaultsfor_timestamp参数决定MySQL服务端对timestamp列中的默认值和`NULL`值的不同处理方法。此变量自MySQL5.6.6版本引入,分为全局级别和会话级别,可动态更新,默认值为OFF。
在默认情况下,如果timestamp列没有显式的指明null属性,那么该列会被自动加上not null属性(而其他类型的列如果没有被显式的指定not null,那么是允许null值的)。
如果往这个列中插入null值,会自动的设置该列的值为current timestamp值。
参考资料:百度百科-时间戳
标准的timestamp都是毫秒级的。不叫微秒。也就是0.001秒。
timestamp在python里处理办法就是转成long相减,这样不损失精度。 如果想得到秒就除以1000。
非标准的timestamp,这里就不说了。有人用分钟,有人用秒,还有人用浮点,还有人用UTC格式的时间,或者是字符串。五花八门。
还有人甚至把前面两个字符去掉。 所以如果timestamp是最近生成的,前面两个字符应该是14
比如象这样子1427244753991
如果timestamp想转变成时间,可以这样子
import time
print time.asctime(time.localtime(1427244753.991))
试一试就知道了。在python的控制台里很方便。
如果你是使用time.time()获取的时间戳,结果是秒数。
大多数语言中的时间戳相减都是微秒数,也就是千分之一秒。
你的时间戳用的那个库中的time?datetime中的时间戳相减成了timedelta对象了。
得到的是具体时间差;
参考以下的测试代码(在Python2.7.x下运行通过)
import datetime
d1 = datetime.datetime.now()
d2 = datetime.datetime.utcnow()
print d1
print d2
print d1 - d2
运行结果是:
2015-07-22 12:37:25.553000
2015-07-22 04:37:25.553000
8:00:00
python库 datetime 的使用可以参考官网文档;
https://docs.python.org/2/library/datetime.html