参考博客:http://blog.csdn.net/SeeTheWorld518/article/details/48314501

     http://www.jb51.net/article/49325.htm

time模块中常用的函数
函数 功能
time.time() 获取时间戳
time.localtime() 获取时间元祖和将时间戳转换为时间元祖
time.gmtime() 获取时间元祖和将时间戳转换为时间元祖
time.mktime 将时间元祖转换为时间戳
time.strftime() 获取格式化时间和将时间元祖转化为格式化时间
time.sttptime() 将格式化时间转化为时间元祖
time.asctime() 将时间元祖转化为固定格式
time.ctime() 将时间戳转化为固定格式
time.sleep() 休息
time.clock()  

在我们平常的代码中,经常需要和时间打交道。

在python中,与时间处理相关的模块有:time、da'tetime以及calendar。

学会计算时间,对程序的调优非常重要,可以在程序中狂打时间戳,来判断程序中那一块耗时最多,从而找到程序调优的重心。

下面将使用最广的time模块,其他模块后续有机会陆续讲解。

首先有几点需要说明:

(1)在python中,通常有这几种方式表示时间:时间戳、格式化的时间字符串以及时间元祖(struct_time共九种元素)。

(2)时间戳(timestamp):时间戳表示是从1970年1月1号00:00:00开始按秒计算到现在的偏移量。

(3)时间元祖:时间元祖共有九个元素,返回时间元祖的函数主要有gmtime()、localtime()、strptime()。

一、表示时间的三种方式

1.时间戳

>>> import time
>>> time.time()
1510666111.4657724 #距离1970年1月1日0点的秒数

2.格式化时间

>>> time.strftime("%Y-%m-%d %H:%M:%S")
'2017-11-14 21:29:32'
常见格式化的时间字符串中参数的含义
%Y        完整的年份(4个数字)
%m 月份(1-12)
%d 一个月中的第几天(1-31)
%H 一天中的第几个小时(0-23)
%M 分钟数(0-59)
%S 秒(0-59)
%c 标准的日期的时间串,例:'Wed Nov 15 00:43:54 2017'
%C 年份的后两位数字
%D 月/天/年,例:'11/15/17'
%H 24小时制
%I 12小时制
%F 年/月/日,例:'2017-11-15'
%T 显示时分秒,例:'00:50:00'
%x 标准的日期串,例:'11/15/17'
%X 标准的时间串,例:'00:50:55'
%a 星期几的简写,例:'Wed'
%A 星期几的全称,例:'Wednesday'
%b 月份的简写,例:'Nov'
%B 月份的全称,例:'November'
%V 每年的第几周
%u 每周的第几天
%U 第*年的第几周

3.时间元祖

>>> time.localtime()  #本地时间
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=21, tm_min=29, tm_sec=46, tm_wday=1, tm_yday=318, tm_isdst=0) >>> time.gmtime() #标准时间,相对伦敦提前8小时
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=13, tm_min=30, tm_sec=30, tm_wday=1, tm_yday=318, tm_isdst=0)

我们称之为时间元祖,虽然不是元祖,但类似元祖。

#可以按照索引来取值
>>> time_tuple[0]
2017
>>> time_tuple[1]
11
时间元祖中个元素所代表的含义
tm_year
tm_mon 月(1-12)
tm_mday 日(1-31)
tm_hour 时(0-23)
tim_min 分(1-59)
tm_sec 秒(0-59)
tm_wday 星期几(0-6,0表示周日)
tm_yday 一年中的第几天(1-365)
tm_isdst

是否是夏令时(默认-1)

二、time模块中常用的函数

在使用该模块中的函数的时候,必须先引入该模块(import time)

1.time.time():返回当前时间时间戳。

>>> time.time()
1510671831.6499062

2.time.localtime():功能有两个:(1)返回当前的时间元祖;(2)将一个时间戳转化为时间元祖。

当没有传参数的时候默认调用time.localtime()

>>> time.localtime() #获取本地时间元祖
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=23, tm_min=5, tm_sec=4, tm_wday=1, tm_yday=318, tm_isdst=0) >>> time.localtime(time.time())#将时间戳转化为时间元祖
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=23, tm_min=7, tm_sec=28, tm_wday=1, tm_yday=318, tm_isdst=0)

3.time.gmtime():与time.localtime()功能一样,返回当前时间元祖和将一个时间戳转化为时间元祖。

>>> time.gmtime() #获得时间元祖
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=15, tm_min=9, tm_sec=12, tm_wday=1, tm_yday=318, tm_isdst=0) >>> time.gmtime(time.time()) #将时间戳转化为时间元祖
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=15, tm_min=9, tm_sec=18, tm_wday=1, tm_yday=318, tm_isdst=0)

4.time.mktime():将一个时间元祖转换为时间戳。

>>> time_tuple = time.localtime()
>>> time.mktime(time_tuple)
1510672372.0

5.time.strptime():将一个格式化的时间字符串转化为时间元祖。

>>> time.strptime('2017-11-14 16:23:33',"%Y-%m-%d %M:%H:%S")
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=23, tm_min=16, tm_sec=33, tm_wday=1, tm_yday=318, tm_isdst=-1)

6.time.strftime():功能有两个:(1)获取格式化的时间字符串;(2)将时间元祖转化为格式化时间。

#获取格式化时间
>>> time.strftime("%Y-%m-%d %M:%H:%S")
'2017-11-14 16:23:33' #将时间元祖转化为格式化时间
>>> time_tuple
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=23, tm_min=12, tm_sec=52, tm_wday=1, tm_yday=318, tm_isdst=0)
>>> time.strftime('%Y-%m-%d %M:%H:%S',time_tuple) #时间格式在前
'2017-11-14 12:23:52'

7.time.asctime():将一个表示时间的元祖或者struct_time表示为'Tue Nov 14 23:12:52 2017'这种形式,如果没有传参数,默认以time.localtime()作为参数。

#将时间元祖表示成固定的形式
>>> time_tuple
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=14, tm_hour=23, tm_min=12, tm_sec=52, tm_wday=1, tm_yday=318, tm_isdst=0)
>>> time.asctime(time_tuple)
'Tue Nov 14 23:12:52 2017'
#如果没有指定参数,默认以time.localtime()作为参数
>>> time.asctime()
'Tue Nov 14 23:27:59 2017'

8.time.ctime():将一个时间戳转换为'Tue Nov 14 23:32:58 2017'这种形式,如果没有指定参数,默认以time.local()作为参数

#转换时间戳
>>> time.ctime(1000000000)
'Sun Sep 9 09:46:40 2001'
#默认情况
>>> time.ctime()
'Tue Nov 14 23:32:58 2017'

9.time.sleep():线程推迟指定的时间运行。默认单位为秒。

>>> time.sleep(10)

10.time.clock()

python常用模块——time模块的更多相关文章

  1. Python常用内建模块

    Python常用内建模块 datetime 处理日期和时间的标准库. 注意到datetime是模块,datetime模块还包含一个datetime类,通过from datetime import da ...

  2. python常用内建模块 collections,bs64,struct,hashlib,itertools,contextlib,xml

    #  2  collections 是Python内建的一个集合模块,提供了许多有用的集合类. # 2.1 namedtuple #tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: p ...

  3. Python 常用内建模块(time ,datetime)

    1,在Python中,与时间处理有关的模块就包括:time,datetime以及calendar. 2,在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(st ...

  4. python常用命令—查看模块所在位置

    环境:ipython3 交互式解释器 语法: import 模块名 模块名.__file__ 功能: 查看模块的所在位置 例:

  5. python常用函数及模块

    原文来源于博客园和CSDN 1.计算函数 abs()--取绝对值 max()--取序列最大值,包括列表.元组 min()--取序列最小值 len()--取长度 divmod(a,b)---取a//b除 ...

  6. Python 常用内建模块(os, sys,random)

    一.os 模块 1,操作系统与环境变量 import osprint(os.name) #操作系统类型,如果是posix 说明系统是linux unix 或 mac os x :如果是nt 就是win ...

  7. python常用内建模块——datetime

    datetime是python处理日期和时间的标准库. 获取当前日期和时间 >>>from datetime import datetime >>>now = da ...

  8. collections(python常用内建模块)

    文章来源:https://www.liaoxuefeng.com/wiki/897692888725344/973805065315456 collections collections是Python ...

  9. Python常用内建模块和第三方库

    目录 内建模块 1  datetime模块(处理日期和时间的标准库) datetime与timestamp转换 str与datetime转换 datetime时间加减,使用timedelta这个类 转 ...

  10. python常用内建模块--datetime

    datetime模块中的datetime类: 获取当前时间:datetime.now() 当前操作系统时区时间,date.utctime(UTC时间) 转换成时间戳:timestamp() 和具体时区 ...

随机推荐

  1. java 中 HashMap 遍历与删除

    HashMap的遍历 方法一.这是最常见的并且在大多数情况下也是最可取的遍历方式 /** * 在键值都需要时使用 */ Map<Integer, Integer> map = new Ha ...

  2. 深入剖析tomcat的类加载机制

    1JVM类加载机制 JVM的ClassLoader通过Parent属性定义父子关系,可以形成树状结构.其中引导类.扩展类.系统类三个加载器是JVM内置的. 它们的作用分别是: 1)引导类加载器:使用n ...

  3. Swift 烧脑体操一

    Swift 烧脑体操(一) - Optional 的嵌套   前言 Swift 其实比 Objective-C 复杂很多,相对于出生于上世纪 80 年代的 Objective-C 来说,Swift 融 ...

  4. Unity学习笔记 - UI System(一)

    转载请注明出处: EnigmaJJ http://www.cnblogs.com/twjcnblog/p/5850648.html 术语 Canvas是Unity的原生组件,Unity的渲染系统使用C ...

  5. PLSQL快捷键设置

    1.在PL/SQL Developer中编写sql语句时,如果无法自动提示字段那是一件痛苦的事情,工作效率又低,在此演示下如何在PL/SQL Developer工具中自动提示字段,让开发者省时又省心, ...

  6. (转 )【Android那些高逼格的写法】InvocationHandler与代理模式

    转自这个公众号: 今天会聊一下InvocationHandler.说到InvocationHandler不得不提到的就是代理模式,什么是代理模式,举个例子,你玩游戏,花钱请个代练,代练其实是登录你的账 ...

  7. jvm(13)-线程安全与锁优化

    [0]README 0.1)本文部分文字转自“深入理解jvm”, 旨在学习 线程安全与锁优化 的基础知识: 0.2)本文知识对于理解 java并发编程非常有用,个人觉得,所以我总结的很详细: [1]概 ...

  8. jQuery + Cookie引导客户操作

    网址:http://www.sucaihuo.com/js/707.html 示例:http://www.sucaihuo.com/jquery/7/707/demo/

  9. linq to sql 动态构建查询表达式树

    通过Expression类进行动态构造lamda表达式. 实现了以下几种类型,好了代码说话: public Expression<Func<T, bool>> GetAndLa ...

  10. Android-ViewPagerIndicator框架使用——使用概要

    概要:关于ViewPagerIndicator这个框架,我这里只讲解如何使用,而不去讲解他是如何实现的,所以想了解源码剖析的朋友,这个就可以略过了. ViewPagerIndicator这个框架通过自 ...