python(29)----時間模組
阿新 • • 發佈:2018-12-18
time模組
1. 三種時間表現形式
- 時間戳(timestamp)
- 格式化的時間字串
- 元祖/結構化時間(struct_time)
2. 時間戳(timestamp)
通常來說,時間戳表示的是從1970年1月1日00:00:00開始按秒計算的偏移量
執行type(time.time()),得到的結果為時間戳,返回的型別為float型別
#舉例: import time print(time.time()) print(type(time.time())) #執行結果 1545055247.5282352 <class 'float'>
3.元祖/結構化時間(struct_time)
struct_time元祖共有9個元素(年、月、日、時、分、秒、一年中第幾周、一年中第幾天、夏令時)
#舉例1: import time print(time.localtime()) t = time.localtime() print(t.tm_year) print(t.tm_wday) #執行結果 time.struct_time(tm_year=2018, tm_mon=12, tm_mday=17, tm_hour=22, tm_min=6, tm_sec=23, tm_wday=0, tm_yday=351, tm_isdst=0) 2018 0
#舉例2: import time print(time.gmtime()) #執行結果 time.struct_time(tm_year=2018, tm_mon=12, tm_mday=17, tm_hour=14, tm_min=8, tm_sec=35, tm_wday=0, tm_yday=351, tm_isdst=0)
區別:
- time.localtime() #當地時間(東八區時間)
- time.gmtime() #UTC時間
4. 各類時間表達式之間的轉換
#結構化時間==>時間戳
import timeprint(time.mktime(time.localtime())) #執行結果 1545102289.0
#將結構化時間==>字串時間
import time print(time.strftime('%Y-%m-%d %X', time.localtime())) #執行結果 2018-12-18 11:07:35
#將字串時間==>結構化時間
import time print(time.strptime('2018:12:18:11:10:30','%Y:%m:%d:%X')) #執行結果 time.struct_time(tm_year=2018, tm_mon=12, tm_mday=18, tm_hour=11, tm_min=10, tm_sec=30, tm_wday=1, tm_yday=352, tm_isdst=-1)
#時間戳==>結構化時間
import time print(time.localtime(time.time())) print(time.gmtime(time.time())) #執行結果 time.struct_time(tm_year=2018, tm_mon=12, tm_mday=18, tm_hour=11, tm_min=19, tm_sec=46, tm_wday=1, tm_yday=352, tm_isdst=0) time.struct_time(tm_year=2018, tm_mon=12, tm_mday=18, tm_hour=3, tm_min=19, tm_sec=46, tm_wday=1, tm_yday=352, tm_isdst=0)
#時間戳==>字串時間
import time print(time.ctime()) #執行結果 Tue Dec 18 11:23:37 2018
#結構化時間==>字串時間
import time print(time.asctime()) #執行結果 Tue Dec 18 11:28:08 2018
5. 其他時間模組
time.sleep()
#執行緒推遲指定時間執行,單位為秒
time.clock()
#unix系統,返回的是‘程序時間’
#windows系統,第一次呼叫返回的是程序執行的實際時間,第二次之後的呼叫時自第一次呼叫以後到現在的執行時間,即兩次時間差。
import datetime print(datetime.datetime.now()) #執行結果 2018-12-18 11:48:49.325871