Tick
時間間隔是以秒為機關的浮點小數。
每個時間戳都以自從1970年1月1日午夜(曆元)經過了多長時間來表示。
Python附帶的受歡迎的time子產品下有很多函數可以轉換常見日期格式。如函數time.time()用ticks計時機關傳回從12:00am, January 1, 1970(epoch) 開始的記錄的目前作業系統時間, 如下執行個體:
#!/usr/bin/python
import 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組數字處理時間:
序号 | 字段 | 值 |
---|---|---|
4位數年 | 2008 | |
1 | 月 | 1 到 12 |
2 | 日 | 1到31 |
3 | 小時 | 0到23 |
4 | 分鐘 | |
5 | 秒 | 0到61 (60或61 是閏秒) |
6 | 一周的第幾日 | 0到6 (0是周一) |
7 | 一年的第幾日 | 1到366 (儒略曆) |
8 | 夏令時 | -1, 0, 1, -1是決定是否為夏令時的旗幟 |
上述也就是struct_time元組。這種結構具有如下屬性:
序号 | 屬性 | 值 |
---|---|---|
tm_year | 2008 | |
1 | tm_mon | 1 到 12 |
2 | tm_mday | 1 到 31 |
3 | tm_hour | 0 到 23 |
4 | tm_min | 0 到 59 |
5 | tm_sec | 0 到 61 (60或61 是閏秒) |
6 | tm_wday | 0到6 (0是周一) |
7 | tm_yday | 1 到 366(儒略曆) |
8 | tm_isdst | -1, 0, 1, -1是決定是否為夏令時的旗幟 |
擷取目前時間
從傳回浮點數的時間辍方式向時間元組轉換,隻要将浮點數傳遞給如localtime之類的函數。
#!/usr/bin/python
import 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/python
import 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/python
import calendar
cal = calendar.month(2008, 1)
print "Here is the calendar:"
print cal;
以上執行個體輸出結果:
Here is the calendar:
January 2008
Mo Tu We Th Fr Sa Su
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
版權聲明:本文為CSDN部落客「weixin_33834679」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。
原文連結:https://blog.csdn.net/weixin_33834679/article/details/92221429