python时间转换

获取当前时间

>>> import time
>>> time.time()
1499929004.413384
>>>

上面的是 uninx 时间戳,我们还可以将他转换成整数

>>> import time
>>> time = time.time()
>>> time
1499929710.776266
>>> int (time)
1499929710

上面的值对于人类而言并不直观,不好理解,我们可以这样转换

>>> time.localtime()
time.struct_time(tm_year=2017, tm_mon=7, tm_mday=13, tm_hour=6, tm_min=58, tm_sec=27, tm_wday=3, tm_yday=194, tm_isdst=0)
>>>

我们可以这样

>>> time = time.localtime(time.time())
>>> time
time.struct_time(tm_year=2017, tm_mon=7, tm_mday=13, tm_hour=6, tm_min=59, tm_sec=32, tm_wday=3, tm_yday=194, tm_isdst=0)
>>> time = time.strftime('%Y-%m-%d %H:%M:%S',time)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'time.struct_time' object has no attribute 'strftime'

注意。Python,我当前的Python 2.7.12 (default, Nov 19 2016, 06:48:10) 报错

而 Python3.5 没有问题

                                                                                                                   ➜  ~ python3.5
Python 3.5.1 (v3.5.1:37a07cee5969, Dec  5 2015, 21:12:44)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import time
>>> st = time.localtime(time.time())
>>> st
time.struct_time(tm_year=2017, tm_mon=7, tm_mday=13, tm_hour=15, tm_min=2, tm_sec=51, tm_wday=3, tm_yday=194, tm_isdst=0)
>>> time.strftime('%Y-%m-%d %H:%M:%S',st)
'2017-07-13 15:02:51'