Time模块简介
在Python中,与时间处理有关的模块就包括:time,datetime以及calendar。Time模块用以取得系统时间相关的信息和时间的格式化等操作。
Time模块常用函数
1, time.time():返回当前时间的时间戳。
Python
>>> time.time()
1495294207.76802
>>>
1
2
3
>>>time.time()
1495294207.76802
>>>
2, time.localtime([secs])
将一个时间戳转换为当前时区的struct_time。secs参数未提供,则以当前时间为准。
Python
>>> import time
>>> time.localtime()
time.struct_time(tm_year=2017, tm_mon=5, tm_mday=20, tm_hour=23, tm_min=28, tm_sec=13, tm_wday=5, tm_yday=140, tm_isdst=0)
>>> time.localtime(1495294207.76802)
time.struct_time(tm_year=2017, tm_mon=5, tm_mday=20, tm_hour=23, tm_min=30, tm_sec=7, tm_wday=5, tm_yday=140, tm_isdst=0)
>>>
1
2
3
4
5
6
>>>importtime
>>>time.localtime()
time.struct_time(tm_year=2017,tm_mon=5,tm_mday=20,tm_hour=23,tm_min=28,tm_sec=13,tm_wday=5,tm_yday=140,tm_isdst=0)
>>>time.localtime(1495294207.76802)
time.struct_time(tm_year=2017,tm_mon=5,tm_mday=20,tm_hour=23,tm_min=30,tm_sec=7,tm_wday=5,tm_yday=140,tm_isdst=0)
>>>
3,time.ctime() 获取当前时间的字符串形式
Python
>>> time.ctime()
'Sat May 20 23:37:22 2017'
>>>
1
2
3
>>>time.ctime()
'Sat May 20 23:37:22 2017'
>>>
4, time.mktime(t):将一个struct_time转化为时间戳。
Python
>>> time.mktime(time.localtime())
1495294309.0
>>>
1
2
3
>>>time.mktime(time.localtime())
1495294309.0
>>>
5, time.sleep(secs):线程推迟指定的时间运行。单位为秒。
6, time.clock程序计时
该函数有两个功能,
在第一次调用的时候,返回的是程序运行的实际时间;
以第二次之后的调用,返回的是自第一次调用后,到这次调用的时间间隔
Python
# Filename : lean001.py
# author by : www.py40.com
import time
time.sleep(1)
print("clock1:",time.clock())
time.sleep(1)
print("clock2:",time.clock())
time.sleep(1)
print("clock3:",time.clock())
1
2
3
4
5
6
7
8
9
10
# Filename : lean001.py
# author by : www.py40.com
importtime
time.sleep(1)
print("clock1:",time.clock())
time.sleep(1)
print("clock2:",time.clock())
time.sleep(1)
print("clock3:",time.clock())
输出:
Python
C:\Users\Administrator>E:\python\learn\lean001.py
clock1: 1.80809102653464e-06
clock2: 1.0000611737463978
clock3: 2.0000602697008847
1
2
3
4
C:\Users\Administrator>E:\python\learn\lean001.py
clock1:1.80809102653464e-06
clock2:1.0000611737463978
clock3:2.0000602697008847
其中第一个clock输出的是程序运行时间
第二、三个clock输出的都是与第一个clock的时间间隔
7, strftime格式化时间戳
格式化成2009-03-20 11:45:39形式: time.strftime(“%Y-%m-%d %H:%M:%S”, time.localtime())
格式化成Sat Mar 28 22:24:24 2009形式: time.strftime(“%a %b %d %H:%M:%S %Y”, time.localtime())
Python
>>> print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))
2016-09-22 16:59:07
1
2
>>>print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))
2016-09-2216:59:07
strftime(format[, tuple]) -> string
将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
python中时间日期格式化符号:
标记
意义
%y
两位数的年份表示(00-99)
%Y
四位数的年份表示(000-9999)
%m
月份(01-12)
%d
月内中的一天(0-31)
%H
24小时制小时数(0-23)
%I
12小时制小时数(01-12)
%M
分钟数(00=59)
%S
秒(00-59)
%a
本地简化星期名称
%A
本地完整星期名称
%b
本地简化的月份名称
%B
本地完整的月份名称
%c
本地相应的日期表示和时间表示
%j
年内的一天(001-366)
%p
本地A.M.或P.M.的等价符
%U
一年中的星期数(00-53)星期天为星期的开始
%w
星期(0-6),星期天为星期的开始
%W
一年中的星期数(00-53)星期一为星期的开始
%x
本地相应的日期表示
%X
本地相应的时间表示
%Z
当前时区的名称
%%
%号本身
8, time.mktime 将格式字符串转换为时间戳
a = “Sat Mar 28 22:24:24 2009″
b = time.mktime(time.strptime(a,”%a %b %d %H:%M:%S %Y”))