菜鸟笔记
提升您的技术认知

python - 获取时间戳

在python 开发web程序时,需要调用第三方的相关接口,在调用时,需要对请求进行签名。需要用到unix时间戳。
在python里,在网上介绍的很多方法,得到的时间戳是10位。而java里默认是13位(milliseconds,毫秒级的)。

下面介绍python获得时间戳的方法:

10时间戳获取方法:

>>> import time
>>> t = time.time()
>>> print t
1436428326.76
>>> print int(t)
1436428326
>>> 

强制转换是直接去掉小数位。

13位时间戳获取方法:

(1)默认情况下python的时间戳是以秒为单位输出的float

>>> 
>>> 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位时间 戳转换成时间:

>>> 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'