Time庫的使用
Python中處理時間的標準庫
import time #導入庫
三類函數
一、時間獲取
# 一.時間獲取:time() ctime() gmtime()
time.time() #獲取當前時間戳 一個浮點數 1970年1月1日開始
time.ctime() #獲取一個人類可讀的時間 格式:Sun Feb 2 17:58:09 2020
time.gmtime() #獲取一個計算機可處理的時間 一個結構體
#time.struct_time(tm_year=2020, tm_mon=2, tm_mday=2, tm_hour=10, tm_min=0, tm_sec=20, tm_wday=6, tm_yday=33, tm_isdst=0)
二、時間格式化
# 二.時間格式化:strftime() strptime()
#1.time.strtime(tpl,ts) 將一個時間結構體 變成字符串
#tpl是格式化模板字符串,用來定義輸出效果 ts是計算機的時間結構體
#例如
t = time.gmtime()
print(time.strftime("%Y-%m-%d %H:%M:%S",t))
#'2020-02-02 10:04:40'
#2.time.strptime(str,tpl) 將一段字符串 轉化爲 時間結構體
##tpl是格式化模板字符串 str是要轉變的字符串
#例如
timeStr = '2020-02-02 10:04:40'
print(time.strptime(timeStr,"%Y-%m-%d %H:%M:%S"))
#time.struct_time(tm_year=2020, tm_mon=2, tm_mday=2, tm_hour=10, tm_min=4, tm_sec=40, tm_wday=6, tm_yday=33, tm_isdst=-1)
常見格式
三、程序計時
# 程序計時:測量器起止動作所經歷時間的過程
# sleep(),perf_counter()
time.sleep() #產生時間函數
time.sleep(s) #程序休眠s秒
perf_counter() #獲取一個CPU級別的將去時間計數值,單位爲秒 和C中clock類似
#例如
start = time.perf_counter()
end = time.perf_counter()
print(end-start)
實例:文本進度條
# TextProbarV2.py
import time #導入time庫
scale = 50 #寬度
print("執行開始".center(scale//2,"-"))
start = time.perf_counter()
for i in range(scale+1):
a = '*'*i #已經完成進度
b = '.'*(scale-i) #未完成進度
c = (i/scale)*100 #進度百分比
dur = time.perf_counter() - start#計算運行時間
#每次不輸出換行,"\r"使光標退到行首
print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end="")
time.sleep(0.1)
print("\n"+"執行結束".center(scale//2,"-"))