Python模塊函數精講:time&time.sleep
4 人贊了文章
前言:在python開發過程中,使用最頻繁的無疑是python的標準庫函數,這些包含在模塊里的函數,給我們的開發帶來了無限的可能,以及無可比擬的便利,這階段與大家詳細探討一下python一些常用的必須學會的模塊,今天,我們詳細了解一下time模塊.
從以上輸出可以看出,time在python屬於內建函數,在Python的modules中,源文件是由c所編寫,以上是python所有的內建函數,也是我們這階段需要學習的內容,會讓我們的編碼能力進一步提升
time:
在平時的開發過程中,經常需要與時間交換信息,比如列印程序日誌,輸出當前時間等等,在一般的情況下,我們就會用到time模塊中的函數,要學會這個模塊,我們需要先了解一下什麼是格林威治天文時間(世界標準時間)和時間戳.
UTC(世界協調時),就是格林威治天文時間,也是世界標準時間。在中國東八區 : UTC+8,DST夏令時.
時間戳是指格林威治時間1970年01月01日00時00分00秒(北京時間1970年01月01日08時00分00秒)起至現在的總秒數。通俗的講, 時間戳是一份能夠表示一份數據在一個特定時間點已經存在的完整的可驗證的數據。 它的提出主要是為用戶提供一份電子證據, 以證明用戶的某些數據的產生時間。
在time模塊中,使用time函數,將可以得到對應的時間戳,也就是從1970年1月1日開始到現在的總秒數:
上例中,使用time函數進行時間戳的獲取,調用了time模塊,所以需要事先包括他,最後進行的是時間戳的取整數,去除後面的浮點部分.
確實,我們獲取時間戳是很容易沒錯,但是我們很難將它轉化為現實中的時間,於是,python還提供了時間戳的格式化函數:localtime
>>> time.localtime(time.time())time.struct_time(tm_year=2018, tm_mon=3, tm_mday=7, tm_hour=12, tm_min=47, tm_sec=39, tm_wday=2, tm_yday=66, tm_isdst=0)>>>
其中很容易看出,year是年份,mon是月份,day是日期,hour是時間,min是分鐘數,sec是seconds也就秒數,這樣我們還覺得不是很容易將它看明白,於是
>>> time.strftime(%Y-%m-%d,time.localtime(time.time()))2018-03-07>>>
這樣我們就很容易看得清楚日期,就像平時看時間一樣,當然,如果你不喜歡這樣的格式,python還有很多時間戳的格式化方式:
time.strftime裡面有很多參數,可以讓你能夠更隨意的輸出自己想要的東西: 下面是time.strftime的參數:
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 當前時區的名稱
>>> time.strftime(%Y-%m-%d-%H-%M-%S,time.localtime(time.time()))2018-03-07-12-59-08>>>
在上述代碼中,我們加入了%H-%M-%S,來格式化時間戳中的具體時間,根據自己的愛好去改變返回時間的格式即可.
time.sleep:
在我們開發過程中,time的應用還有很多,比如下面介紹的time.sleep
顧名思義,sleep就是推遲程序在線程中進行的時間,參數形式是:
seconds也就是輸入的秒數,time.sleep(1),相應的,在執行到這句語句時候,python就會將程序推遲一秒鐘後繼續下一個語句,這在判斷程序效率方面有重要應用.
個人QQ:2533524298
推薦閱讀: