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))