<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Python中內建了一些與時間處理相關的庫,如time、datatime和calendar庫。
其中time庫是Python中處理時間的標準庫,是最基礎的時間處理庫。
time庫的功能如下:
(1)計算機時間的表達
(2)提供獲取系統時間並格式化輸出功能
(3)提供系統級精確計時功能,用於程式效能分析
格式如下:
import time
time.<b>( )
time庫包括三類函數:
時間獲取:time()、ctime()、gmtime()、localtime()
時間格式化:strftime()、strptime()、asctime()
程式計時:sleep()、perf_counter()
獲取當前時間戳(從世界標準時間的1970年1月1日00:00:00開始到當前這一時刻為止的總秒數),即計算機內部時間值,浮點數。
範例程式碼如下:
import time print(time.time())
執行介面如下:
Python提供了可以獲取結構化時間的localtime()函數和gmtime函數
獲取當前時間,表示為計算機可處理的時間格式(struct_time格式)
localtime()函數和gmtime()函數都可將時間戳轉換為以元組表示的時間物件(struct_time格式),但是localtime()函數得到的是當地時間,gmtime()函數得到的是世界統一時間。
格式如下所示:
localtime([secs]) gmtime([secs])
其中secs是一個表示時間戳的浮點數,若不提供該引數,預設以time()函數獲取的時間戳作為引數。
localtime函數範例程式碼如下:
import time print(time.localtime())#預設以以time()函數獲取的時間戳作為引數,為當地時間 print(time.localtime(34.54))#引數為浮點數
執行介面如下:
gmtime函數範例如下:
import time print(time.gmtime())#世界統一時間。 print(time.gmtime(34.54))
執行介面如下:
struct_time元組中元素的含義和取值
元素 | 含義 | 取值 |
tm_year | 年 | 4位元數位,如2022 |
tm_mon | 月 | 1~12,如2 |
tm_mday | 日 | 1~31,如5 |
tm_hour | 時 | 0~23,如7 |
tm_min | 分 | 0~59,如50 |
tm_sec | 秒 | 0~61(60或61是閏秒) |
tm_wday | 一週的第幾日 | 0~6(0為週一,依此類推) |
tm_yday | 一年的第幾日 | 1~366(366為儒略曆) |
tm_isdst | 夏令時 | 1:是夏令時 0:非夏令時 -1:不確定 |
讀取當前時間並以易讀方式表示,返回字串。
ctime()函數用於將一個時間戳(以s為單位的浮點數)轉換為“Sat Jan 13 21:56:34 2018"這種形式(若該函數未收到引數,則預設以time.time()作為引數),轉換成的形式為”星期 月份 當月號 時分秒 年份“。
範例程式碼如下:
import time print(time.ctime()) print(time.ctime(34.56))
執行介面如下:
將時間以合理的方式展示出來
格式化:類似字串格式化,需要有展示模板
展示模板由特定的格式化控制符組成
strftime()函數借助時間格式控制符來輸出格式化的時間字串,其中%a,%d,%b等是time庫預定義的用於控制不同時間或時間成分的格式控制符。
time庫中常用的時間格式控制符及其說明如下所示
時間格式控制符 | 說明 |
%Y | 四位數的年份,取值範圍為0001~9999,如1900 |
%m | 月份(01~12),例如10 |
%d | 月中的一天(01~31)例如:25 |
%B | 本地完整的月份名稱,比如January |
%b | 本地簡化的月份名稱,比如Jan |
%a | 本地簡化的週日期,Mon~Sun,例如Wed |
%A | 本地完整週日期,”Monday~Sunday,例如Wednesday |
%H | 24小時制小時數(00~23),例如:12 |
%l | 12小時制小時數(01~12),例如:7 |
%p | 上下午,取值為AM或PM |
%M | 分鐘數(00~59),例如26 |
%S | 秒(00~59),例如26 |
strftime()函數有兩條引數,其中一個為tpl(格式化的模板字串引數,用來定義輸出效果),另一個為ts(是計算機內部時間型別變數)
格式如下:
strftime(tpl,ts)
範例程式碼如下:
import time t=time.gmtime() print(time.strftime("%Y-%m-%d %H:%M:%S",t))
執行介面如下:
strptime(str,tpl)tpl(是格式化模板字串,用來定義輸入效果)
str是字串形式的時間值,所以他的格式為前面為字串,後面為字串的格式,然後輸出的格式為struct_time。
範例程式碼如下:
import time print(time.strptime("2018-1-26 12:55:20",'%Y-%m-%d %H:%M:%S'))
執行介面如下所示:
在對時間的理解上,我們可以這樣認為:在計算機中為了表達時間,它其實只有一個浮點數,前面提到的這個浮點數是從1970年1月1日開始的,然後為了讓其他的程式能夠更好的處理這個浮點數,我們把它定義一個程式能夠理解的格式,這個格式就是用gmtime來獲取的struct_time格式。
struct_time格式,它包含了許多元素,這些元素的值都是通過浮點數來提供的。
反過來,我們也可以使用一個字串賦予一個時間給我們的strptime型別,然後並由這個型別進一步生成浮點數。
程式計時應用廣泛
程式計時指測量起止動作所經歷時間的過程
測量時間指的是能夠記錄時間的流逝: perf_counter()獲取計算機中CPU也就是中央處理器以其頻率執行的時鐘納秒計算,非常精確。
產生時間函數:sleep
讓程式去休眠或者產生一定的時間
perf_counter()返回一個CPU級別的精確時間計數值,單位為秒,由於這個計數值起點不確定,連續呼叫差值才有意義
範例程式碼如下:
import time start=time.perf_counter() end=time.perf_counter() print(start) print(end) print(end-start)
執行介面如下:
sleep(s) s擬休眠的時間,單位是秒,可以是浮點數
範例程式碼如下:
import time print("開始") time.sleep(3.3) print("結束")
執行介面如下:
程式經過3.3秒後輸出結束。
到此這篇關於python中time庫使用詳解的文章就介紹到這了,更多相關python time庫詳解內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45