Python 的time模块使用三种时间格式,并且提供在这三种格式之间相互转换的函数。这三种时间格式分别是:
Second(秒数)
浮点型,从Unix epoch(Unix纪元,1970年1月1日零点)起的秒数指定一个时刻。time( )函数直接将当前时刻转化成这种格式。
>>> import time
>>> time.time()
1405662196.451
>>>
从Unix纪元开始算,过去1405662196.451这么多秒,就到了2014年7月18日下午13点43分16.451秒。因为有些操作系统并不能给出很高的时间精度,所以1秒以下的数值并不可靠。用time.ctime( )函数可以把秒数转化为人类容易识别的格式化的时间:
>>> import time
>>> t = 1405662196.451
>>> time.ctime(t)
'Fri Jul 18 13:43:16 2014'
>>>
python有些内置函数返回的值是这种类型,比如获取文件修改时间的os.stat().st_mtime属性就是这种格式。
time.struct_time
第二种struct_time是元组型结构体,记录各个时间单位的数值,比如
time.struct_time(tm_year=2014, tm_mon=7, tm_mday=18, tm_hour=13, tm_min=43, tm_sec=30, tm_wday=4, tm_yday=199, tm_isdst=0)
这种格式包含信息量大,方便单独指定各时间单位。
格式化时间
第三种是人类使用的时间格式,字符串型,比如’Fri Jul 18 13:44:19 2014’
这三种时间格式在下图中用蓝色框表示。
三种时间格式转化函数图解
金色框表示time模块提供的各种方法。
原文链接:http://www.lfhacks.com/tech/python-time-module-relationship