Python获取10位与13位Unix时间戳的方法
本文介绍在Python Web开发中调用第三方接口时,如何获取10位秒级和13位毫秒级Unix时间戳。通过time模块,演示了强制转换获取10位时间戳,以及利用round函数将秒转换为毫秒得到13位时间戳的方法,并包含将13位时间戳还原为可读时间的示例。
Python时间戳应用场景与差异
在Python开发Web程序时,调用第三方接口通常需要对请求进行签名,此时需要使用Unix时间戳。网上常见的Python方法生成的时间戳为10位,而Java默认生成的是13位(毫秒级)。
以下是Python获取时间戳的具体方法介绍。
获取10位时间戳
1、获取10位时间戳的方法:
>>> import time
>>> t = time.time()
>>> print t
1436428326.76
>>> print int(t)
1436428326
>>>
强制类型转换会直接截断小数部分。
获取13位毫秒级时间戳
2、获取13位时间戳的方法:
(1)Python默认输出的时间戳是以秒为单位的浮点数。
>>>
>>> import time
>>> time.time()
1436428275.207596
>>>
通过将秒转换为毫秒,可以获得13位的时间戳:
import time
millis = int(round(time.time() * 1000))
print millis
round()函数用于四舍五入。
(2)
import time
current_milli_time = lambda: int(round(time.time() * 1000))
Then:
>>> current_milli_time()
1378761833768
13位时间戳转具体时间
将13位时间戳转换为具体时间:
>>> import time
>>> now = int(round(time.time()*1000))
>>> now02 = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(now/1000))
>>> now02
'2017-11-07 16:47:14'
本文关于Python获取10位和13位时间戳的示例介绍完毕,更多相关内容可参考本站过往文章或继续浏览后续内容,感谢支持。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













