2022年 11月 5日

python – 获取时间戳(10位和13位)

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

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

1、10时间戳获取方法:

  1. >>> import time
  2. >>> t = time.time()
  3. >>> print t
  4. 1436428326.76
  5. >>> print int(t)
  6. 1436428326
  7. >>>

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

2、13位时间戳获取方法:

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

  1. >>>
  2. >>> import time
  3. >>> time.time()
  4. 1436428275.207596
  5. >>>

round()是四舍五入。

(2)

  1. import time
  2. current_milli_time = lambda: int(round(time.time() * 1000))
  3. Then:
  4. >>> current_milli_time()
  5. 1378761833768

13位时间 戳转换成时间:

  1. >>> import time
  2. >>> now = int(round(time.time()*1000))
  3. >>> now02 = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(now/1000))
  4. >>> now02
  5. '2017-11-07 16:47:14'