资源描述:
《python的time模块使用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、python时间模块time详解在平常的代码中,我们常常需要与时间打交道。在Python中,与时间处理有关的模块就包括:time,datetime以及calendar。这篇文章,主要讲解time模块。在开始之前,首先要说明这几点:1.在Python中,通常有这几种方式来表示时间:1)时间戳2)格式化的时间字符串3)元组(struct_time)共九个元素。由于Python的time模块实现主要调用C库,所以各个平台可能有所不同。2.UTC(CoordinatedUniversalTime,世界协调时)亦即格林威治天文时间,世界标准时间。在中国为
2、UTC+8。DST(DaylightSavingTime)即夏令时。3.时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。返回时间戳方式的函数主要有time(),clock()等。4.元组(struct_time)方式:struct_time元组共有9个元素,返回struct_time的函数主要有gmtime(),localtime(),strptime()。下面列出这种方式元组中的几个元素:索引(Inde
3、x)属性(Attribute)值(Values)0tm_year(年)比如20111tm_mon(月)1-122tm_mday(日)1-313tm_hour(时)0-234tm_min(分)0-595tm_sec(秒)0-616tm_wday(weekday)0-6(0表示周日)7tm_yday(一年中的第几天)1-3668 tm_isdst(是否是夏令时) 默认为-1 接着介绍time模块中常用的几个函数:1)time.localtime([secs]):将一个时间戳转换为当前时区的struct_time。secs参数未提供,则以当前时间为准
4、。>>>time.localtime()time.struct_time(tm_year=2011,tm_mon=5,tm_mday=5,tm_hour=14,tm_min=14,tm_sec=50,tm_wday=3,tm_yday=125,tm_isdst=0)>>>time.localtime(1304575584.1361799)time.struct_time(tm_year=2011,tm_mon=5,tm_mday=5,tm_hour=14,tm_min=6,tm_sec=24,tm_wday=3,tm_yday=125,tm_i
5、sdst=0)2)time.gmtime([secs]):和localtime()方法类似,gmtime()方法是将一个时间戳转换为UTC时区(0时区)的struct_time。>>>time.gmtime()time.struct_time(tm_year=2011,tm_mon=5,tm_mday=5,tm_hour=6,tm_min=19,tm_sec=48,tm_wday=3,tm_yday=125,tm_isdst=0)3)time.time():返回当前时间的时间戳。>>>time.time() 1304575584.1361799
6、4)time.mktime(t):将一个struct_time转化为时间戳。>>>time.mktime(time.localtime())1304576839.05)time.sleep(secs):线程推迟指定的时间运行。单位为秒。6)time.clock():这个需要注意,在不同的系统上含义不同。在UNIX系统上,它返回的是“进程时间”,它是用秒表示的浮点数(时间戳)。而在WINDOWS中,第一次调用,返回的是进程运行的实际时间。而第二次之后的调用是自第一次调用以后到现在的运行时间。(实际上是以WIN32上QueryPerformance
7、Counter()为基础,它比毫秒表示更为精确)?12345678importtime if__name__=='__main__': time.sleep(1) print"clock1:%s"%time.clock() time.sleep(1) print"clock2:%s"%time.clock() time.sleep(1) print"clock3:%s"%time.clock()运行结果:clock1:3.35238137808e-006 clock2:1.00004944763
8、clock3:2.00012040636其中第一个clock()输出的是程序运行时间第二、三个clock()输出的都是与第一个clock的时间间隔7)