Python程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。时间间隔是以秒为单位的浮点小数。
python学习网,大量的免费python视频教程,欢迎在线学习!
1、时钟时间--time
time提供了很多管理时钟时间的函数,如
1)获取以秒为单位的浮点时间time():
>>> import time >>> print time.time()#获取当前时间的浮点值,单位为秒 1369031293.33 >>>
2)获取人可以直观理解的时间ctime():
>>> print time.ctime() Mon May 20 14:29:30 2013#获取人能理解的直观时间
3)浮点时间转化为直观时间:
>>> t = time.time()#浮点时间 >>> print t 1369034676.69 >>> print time.ctime(t)#浮点时间转化为直观时间 Mon May 20 15:24:36 2013
4)ctime()到time(),直观时间到浮点时间的直接转化,我在python的标准库中没有找到。但经过一步中间转化strptime()为UTC时间后,可以转化为浮点时间,建议先看到9)再回来看,这样会比较容易理解。
>>> t = time.time()#浮点时间 >>> ct = time.ctime(t)#浮点转化为直观时间 >>> gmt = time.strptime(ct)#直观时间转化为UTC时间 >>> tt = time.mktime(gmt)#UTC时间转化为浮点值时间 >>> print t,tt 1369035200.01 1369035200.0
注意:浮点时间t先转化为直观时间ct,再转化为浮点时间tt,发现tt的精度降低了。因为直观时间只能精确到秒,所以从浮点时间t先转化为直观时间ct,小数点后面的毫秒就已经丢失了。
5)获取格林尼治时间UTC(Coordinated Universal Time,协调时间)格式:
>>> print time.gmtime()#获取UTC格式的当前时间 time.struct_time(tm_year=2013, tm_mon=5, tm_mday=20, tm_hour=6, tm_min=37, tm_sec=45, tm_wday=0, tm_yday=140, tm_isdst=0)
一个UTC格式的时间有9项目,最后一个tm_isdst表示是否是夏时令时间
6)获取当前时区的当前时间localtime()
>>> print time.localtime()#获取当前时区的当前时间 time.struct_time(tm_year=2013, tm_mon=5, tm_mday=20, tm_hour=14, tm_min=45, tm_sec=24, tm_wday=0, tm_yday=140, tm_isdst=0)
日期和时间管理--datetime
1)datetime中的时间由time表示:可以用datetime.time()直接构造时间,不过参数必须在指定范围内:
>>> import datetime >>> print datetime.time(18,20,56)#构造时间 18:20:56 >>> print datetime.time.min,datetime.time.max,datetime.time.resolution 00:00:00 23:59:59.999999 0:00:00.000001