Python程序能用很多方式處理日期和時間。轉換日期格式是一個常見的例行瑣事。Python有一個 time 和 calendar 模組可以幫忙。
什么是Tick?
時間間隔是以秒為單位的浮點小數。
每個時間戳都以自從1970年1月1日午夜(歷元)經過了多長時間來表示。
Python附帶的受歡迎的time模塊下有很多函數可以轉換常見日期格式。如函數time.time()用ticks計時單位返回從12:00am, January 1, 1970(epoch) 開始的記錄的當前操作系統時間, 如下實例:
#!/usr/bin/pythonimport time; # This is required to include time module.ticks = time.time()print "Number of ticks since 12:00am, January 1, 1970:", ticks
以上實例輸出結果:
Number of ticks since 12:00am, January 1, 1970: 7186862.73399
Tick單位最適于做日期運算。但是1970年之前的日期就無法以此表示了。太遙遠的日期也不行,UNIX和Windows只支持到2038年某日。
什么是時間元組?
很多Python函數用一個元組裝起來的9組數字處理時間:
上述也就是struct_time元組。這種結構具有如下屬性:
獲取當前時間
從返回浮點數的時間輟方式向時間元組轉換,只要將浮點數傳遞給如localtime之類的函數。
#!/usr/bin/pythonimport time;localtime = time.localtime(time.time())print "Local current time :", localtime
以上實例輸出結果:
Local current time : time.struct_time(tm_year=2013, tm_mon=7, tm_mday=17, tm_hour=21, tm_min=26, tm_sec=3, tm_wday=2, tm_yday=198, tm_isdst=0)
獲取格式化的時間
你可以根據需求選取各種格式,但是最簡單的獲取可讀的時間模式的函數是asctime():
#!/usr/bin/pythonimport time;localtime = time.asctime( time.localtime(time.time()) )print "Local current time :", localtime
以上實例輸出結果:
Local current time : Tue Jan 13 10:17:09 2009
獲取某月日歷
Calendar模塊有很廣泛的方法用來處理年歷和月歷,例如打印某月的月歷:
#!/usr/bin/pythonimport calendarcal = calendar.month(2008, 1)print "Here is the calendar:"print cal;
以上實例輸出結果:
Here is the calendar: January 2008Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 1314 15 16 17 18 19 2021 22 23 24 25 26 2728 29 30 31
新聞熱點
疑難解答
圖片精選