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求列表交集的方法汇总
Nov 10 Python
利用Opencv中Houghline方法实现直线检测
Feb 11 Python
Python3实现的简单验证码识别功能示例
May 02 Python
Python用于学习重要算法的模块pygorithm实例浅析
Aug 16 Python
python实现祝福弹窗效果
Apr 07 Python
python2.7的flask框架之引用js&css等静态文件的实现方法
Aug 22 Python
Python 正则表达式爬虫使用案例解析
Sep 23 Python
使用 Python 写一个简易的抽奖程序
Dec 08 Python
python sorted函数原理解析及练习
Feb 10 Python
解决pycharm中导入自己写的.py函数出错问题
Feb 12 Python
Python实现AI自动抠图实例解析
Mar 05 Python
python判断变量是否为列表的方法
Sep 17 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的access操作类
2008/04/09 PHP
php递归获取目录内文件(包含子目录)封装类分享
2013/12/25 PHP
php实现无限级分类
2014/12/24 PHP
php使用正则验证中文
2016/04/06 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
有关于JS辅助函数inherit()的问题
2013/04/07 Javascript
jquery如何实现在加载完iframe的内容后再进行操作
2013/09/10 Javascript
jquery实现非叠加式的搜索框提示效果
2014/01/07 Javascript
JSON格式化输出
2014/11/10 Javascript
jquery提示效果实例分析
2014/11/25 Javascript
jQuery中appendTo()方法用法实例
2015/01/08 Javascript
nodejs URL模块操作URL相关方法介绍
2015/03/03 NodeJs
Javascript中setTimeOut和setInterval的定时器用法
2015/06/12 Javascript
JS 清除字符串数组中,重复元素的实现方法
2016/05/24 Javascript
基于JavaScript实现新增内容滚动播放效果附完整代码
2017/08/24 Javascript
AngularJS 控制器 controller的详解
2017/10/17 Javascript
js使用ajax传值给后台,后台返回字符串处理方法
2018/08/08 Javascript
jQuery实现获取及设置CSS样式操作详解
2018/09/05 jQuery
js实现删除li标签一行内容
2019/04/16 Javascript
对vuex中getters计算过滤操作详解
2019/11/06 Javascript
js回调函数仿360开机
2019/12/26 Javascript
Angular8 实现table表格表头固定效果
2020/01/03 Javascript
梳理一下vue中的生命周期
2020/12/30 Vue.js
[06:45]DOTA2卡尔工作室 英雄介绍幻影长矛手篇
2013/07/12 DOTA
[01:00:30]完美世界DOTA2联赛循环赛 Inki vs Matador BO2第二场 10.31
2020/11/02 DOTA
Python实现对excel文件列表值进行统计的方法
2015/07/25 Python
浅谈python中copy和deepcopy中的区别
2017/10/23 Python
python判断所输入的任意一个正整数是否为素数的两种方法
2019/06/27 Python
使用pip安装python库的多种方式
2019/07/31 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
python全局变量引用与修改过程解析
2020/01/07 Python
python+tifffile之tiff文件读写方式
2020/01/13 Python
matplotlib图例legend语法及设置的方法
2020/07/28 Python
多个版本的python共存时使用pip的正确做法
2020/10/26 Python
优秀经理事迹材料
2014/02/01 职场文书
推荐信格式范文
2014/05/09 职场文书