Python的time模块中的常用方法整理


Posted in Python onJune 18, 2015

在应用程序的开发过程中,难免要跟日期、时间处理打交道。如:记录一个复杂算法的执行时间;网络通信中数据包的延迟等等。Python中提供了time, datetime calendar等模块来处理时间日期,今天对time模块中最常用的几个函数作一个介绍。
time.time

time.time()函数返回从1970年1月1日以来的秒数,这是一个浮点数。
time.sleep

可以通过调用time.sleep来挂起当前的进程。time.sleep接收一个浮点型参数,表示进程挂起的时间。
time.clock

在windows操作系统上,time.clock() 返回第一次调用该方法到现在的秒数,其精确度高于1微秒。可以使用该函数来记录程序执行的时间。下面是一个简单的例子:
 

import time
 
print time.clock() 
#1
time.sleep(2)
print time.clock() 
#2
time.sleep(3)
print time.clock() 
#3
 
#---- result
#3.91111160776e-06
#1.99919151736
#4.99922364435
time.gmtime

该函数原型为:time.gmtime([sec]),可选的参数sec表示从1970-1-1以来的秒数。其默认值为time.time(),函数返回time.struct_time类型的对象。(struct_time是在time模块中定义的表示时间的对象),下面是一个简单的例子:
 

import time
 
print time.gmtime() 
#获取当前时间的struct_time对象
print time.gmtime(time.time() - 24 * 60 * 60) 
#获取昨天这个时间的struct_time对象
 
#---- result
#time.struct_time(tm_year=2009, tm_mon=6, tm_mday=23, tm_hour=15, tm_min=16, tm_sec=3, tm_wday=1, tm_yday=174, tm_isdst=0)
#time.struct_time(tm_year=2009, tm_mon=6, tm_mday=22, tm_hour=15, tm_min=16, tm_sec=3, tm_wday=0, tm_yday=173, tm_isdst=0)
time.localtime

time.localtime与time.gmtime非常类似,也返回一个struct_time对象,可以把它看作是gmtime()的本地化版本。
time.mktime

time.mktime执行与gmtime(), localtime()相反的操作,它接收struct_time对象作为参数,返回用秒数来表示时间的浮点数。例如:
 

import time
 
#下面两个函数返回相同(或相近)的结果
print time.mktime(time.localtime())
print time.time()
time.strftime

time.strftime将日期转换为字符串表示,它的函数原型为:time.strftime(format[, t])。参数format是格式字符串(格式字符串的知识可以参考:time.strftime),可选的参数t是一个struct_time对象。下面的例子将struct_time对象转换为字符串表示:
 

import time
 
print time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime())
print time.strftime('Weekday: %w; Day of the yesr: %j')
 
#---- result
#2009-06-23 15:30:53
#Weekday: 2; Day of the yesr: 174
time.strptime

按指定格式解析一个表示时间的字符串,返回struct_time对象。该函数原型为:time.strptime(string, format),两个参数都是字符串,下面是一个简单的例子,演示将一个字符串解析为一个struct_time对象:
 

import time
 
print time.strptime('2009-06-23 15:30:53', '%Y-%m-%d %H:%M:%S')
 
#---- result
#time.struct_time(tm_year=2009, tm_mon=6, tm_mday=23, tm_hour=15, tm_min=30, tm_sec=53, tm_wday=1, tm_yday=174, tm_isdst=-1)

以上介绍的方法是time模块中最常用的几个方法,在Python手册中还介绍了其他的方法和属性,如:time.timezone, time.tzname …感兴趣的朋友可以参考Python手册 time 模块。

Python 相关文章推荐
python解析xml文件实例分享
Dec 04 Python
Python之Web框架Django项目搭建全过程
May 02 Python
Python使用defaultdict读取文件各列的方法
May 11 Python
python2.7 mayavi 安装图文教程(推荐)
Jun 22 Python
Django 路由系统URLconf的使用
Oct 11 Python
Python实现简单查找最长子串功能示例
Feb 26 Python
python文件转为exe文件的方法及用法详解
Jul 08 Python
Python 变量的创建过程详解
Sep 02 Python
python用TensorFlow做图像识别的实现
Apr 21 Python
使用python求斐波那契数列中第n个数的值示例代码
Jul 26 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
Nov 05 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
Jan 30 Python
Python抽象类的新写法
Jun 18 #Python
Python实现的彩票机选器实例
Jun 17 #Python
Python基于Tkinter实现的记事本实例
Jun 17 #Python
Python基于Tkinter的HelloWorld入门实例
Jun 17 #Python
在Python的struct模块中进行数据格式转换的方法
Jun 17 #Python
Python实现的使用telnet登陆聊天室实例
Jun 17 #Python
Python使用urllib2模块实现断点续传下载的方法
Jun 17 #Python
You might like
PHP 替换模板变量实现步骤
2009/08/24 PHP
ThinkPHP关联模型操作实例分析
2012/09/23 PHP
使用PHP备份MySQL和网站发送到邮箱实例代码
2013/11/28 PHP
Yii2中cookie用法示例分析
2016/07/18 PHP
javascript 面向对象 function类
2010/05/13 Javascript
niceTitle 基于jquery的超链接提示插件
2010/05/31 Javascript
jquery中ajax学习笔记4
2011/10/16 Javascript
js不能跳转到上一页面的问题解决方法
2013/03/01 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
Thinkphp模板没有解析直接原样输出的解决方法
2014/10/31 Javascript
js实现仿爱微网两级导航菜单效果代码
2015/08/31 Javascript
简单介绍JavaScript数据类型之隐式类型转换
2015/12/28 Javascript
关于vue.js弹窗组件的知识点总结
2016/09/11 Javascript
原生JS实现的放大镜效果实例代码
2016/10/15 Javascript
jQuery实现的小图列表,大图展示效果幻灯片示例
2016/10/25 Javascript
jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】
2017/03/03 Javascript
jQuery实现div跟随鼠标移动
2020/08/20 jQuery
javaScript实现复选框全选反选事件详解
2020/11/20 Javascript
JS删除对象中某一属性案例详解
2020/09/08 Javascript
python文件操作整理汇总
2014/10/21 Python
Python标准库06之子进程 (subprocess包) 详解
2016/12/07 Python
200 行python 代码实现 2048 游戏
2018/01/12 Python
Python网络编程基于多线程实现多用户全双工聊天功能示例
2018/04/10 Python
Python实现读取txt文件并转换为excel的方法示例
2018/05/17 Python
python 统计列表中不同元素的数量方法
2018/06/29 Python
Python基于滑动平均思想实现缺失数据填充的方法
2019/02/21 Python
解决python 3 urllib 没有 urlencode 属性的问题
2019/08/22 Python
HTML5 中新的全局属性(整理)
2013/07/31 HTML / CSS
大门门卫岗位职责
2013/11/30 职场文书
母亲七十大寿答谢词
2014/01/18 职场文书
关于中国梦的演讲稿
2014/04/23 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
男生贾里读书笔记
2015/06/30 职场文书
大学升旗仪式主持词
2015/07/04 职场文书
javascript Number 与 Math对象的介绍
2021/11/17 Javascript
js前端设计模式优化50%表单校验代码示例
2022/06/21 Javascript