Python之時間處理模塊time

jopen 10年前發布 | 11K 次閱讀 Python Python開發

一、簡述

  time模塊下有兩種時間表示方法,一種是:時間戳的方式,是基于1970年1月1日0時0分0秒的偏移,第二種方式是struct_time()類型的表示方法。

---------------------------------------------------------------------------------

二、詳情

首先當然是要import一下time模塊:

import time
之后我們介紹該模塊下的幾個常用函數

1. time.time()               返回自1970年1月1日到目前為止的秒數,即所謂的時間戳,是一個浮點數。我對此表示懷疑,所以type一下,果然是浮點數:

type(time.time())
對于高檔的攻城獅而言,記住1970年1月1日是應該的,就像你應該知道1949年10月1日一樣。

2. time.sleep()            用于掛起當前線程,它接受一個浮點數,表示掛起時間,單位是秒。比如:

time.sleep(2.5)  #將當前線程掛起2.5秒,休息2.5秒,讓子彈再飛一會兒吧

 

3. time.clock()             用于返回第一次調用該方法到現在的秒數,傳說可精確到微妙,我對此很懷疑,測試一下,至少在windows上是不那么靠譜的,測試一下:

import time
time.clock()
time.sleep(1.2)
print time.clock()

 

4. time.gmtime([sec])    可選參數[sec]表示自1970年1月1日以來的秒數,默認值是time.time(),即當前的累積秒數,此函數返回一個time.struct_time類型對象,這個對象包括年份,日月,星期,天數,時分秒等描述時間的信息。

import time
time.gmtime()   #返回當前時間對應的time_struct類型對象
time.gmtime(time.time()-24*60*60)   #返回昨天此時對應的time_struct對象

5.  time.localtime()    和time.gmtime()一樣,剛開始我打印time.gmtime()發現時間上不對,結果發現還有個time.localtime(),試一下這個就對上了,原來localtime才是返回本地時間對應的一個time_struct對象的,而gmtime()大概就是返回一個國際標準時間對應的struct_time對象吧!

6.  time.mktime() 和上述兩個函數的操作相反,用于將structt_time對象轉換為累加秒數,可這樣測試一下,他們的結果應該大致相當

import time
print time.time()
print time.mktime(time.localtime())
print time.mktime(time.gmtime())

7.  time.strftime() 將時間按照給定格式解釋為時間字符串,函數原型為:time.strftime(format [,t])  其中t為一個struct_time對象,至于你想要得格式可按照你的要求自由組合,但就像C中的printf函數一樣,用%控制符來控制

import time
print time.strftime('%Y-%m-%d %H:%M:%S')
print time.strftime('%w,%j',time.gmtime())

可總結下這些百分號控制符的用法,如下:

%Y 對應年份四位數表示    
%y  對應年份兩位數表示            
%m 對應月份          
%d  對應日期                      
%H 對應時間 24小時制      
 %I 對應時間12小時制                
%M 對應分鐘          
%S  對應秒鐘                      
%j   對應一年中的第幾天  
%w  對應星期                                
%W一年中的星期數 

8. time.strptime()將時間字符串解釋為一個struct_time對象,它接收兩個字符串參數,用法如下示例:

import time
print time.strptime('2009-06-23 15:30:53', '%Y-%m-%d %H:%M:%S')

9. time.ctime()將一個時間戳轉換成一個字符串,默認為當前時間戳

 

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!