time库
概述
处理时间是程序最常用的功能之一,time 库是 Python 提供的处理时间标准库。
time 库提供系统级精确计时器的功能,可以用来分析程序性能,亦可让程序暂停运行时间等。
引入
与其他库的引入方式相同,其常用形式为import time
使用
time 库的功能主要分为3个方面:时间处理、时间格式化和计时。
时间处理
time()
:获取当前时间戳,即计算机内部时间值,浮点数ctime()
:获取当前时间并以对应的易读字符串表示gmtine()
:获取当前时间戳对应的 struct_time 对象localtime()
:获取当前时间戳对应的本地时间的 struct_time 对象
关于 struct_time 对象的参数,其含义及取值如下:
tm_year
:年份,整数tm_mon
:月份,[1,12]tm_mday
:日期,[1,31]tm_hour
:小时,[0,23]tm_min
:分钟,[0,59]tm_sec
:秒,[0,61]tm_wday
:星期,[0,6](0表示星期一)tm_yday
:今年第几天,[1,366]tm_isdst
:是否为夏令时(0否1是-1未知)
时间格式化
mktine(t)
:将 struct_time 对象t转换为时间戳,t为本地时间strftime(tpl,t)
:时间格式化最有效方法,利用一个格式字符串,对时间格式进行表示strptime(str,tpl)
:与 strftime 相反,用于提取字符串中的时间生成 struct_time 对象。
其中格式化控制符的参数、含义及取值如下:
%Y
:年份,[0001,9999]%m
:月份,[01,12]%B
:月名,Januray~December%b
:月名,Jan~Dec%d
:日期,[01,31]%A
:Monday~Sunday%a
:Mon~Sun%H
:小时,[0,23]%h
:小时,[0,12]%p
:上/下午,AM/PM%M
:分钟,[0,59]%S
:秒钟,[0,59]
计时
sleep(s)
:程序休眠 s 秒后输出perf_counter()
:返回一个CPU级别的精确时间计数值,单位为秒,在程序中经常通过调用差值来查看程序运行时间
示例
斐波那契数列求和计时
计算斐波那契数列前36项的和,并返回其运行时间。
import time
start = time.perf_counter()
def fib(n):
if n==1:
return 1
elif n==2:
return 2
else:
return fib(n-1)+fib(n-2)
fib(36)
end = time.perf_counter()
during = end-start
print("程序运行时间是{:.2f}s".format(during))