import time
時間戳(timestamp):時間戳表示從1970年1月1日00:00:00:開始按秒九三的時間偏移量code
import time time_stamp = time.time() print(time_stamp,type(time_stamp))
格式化時間字符串(format string):格式化時間表示的是普通的字符串格式的時間orm
import time format_time = time.strftime("%Y-%m-%d %X") print(format_time,type(format_time)) # 2019-09-15 14:12:22 <class 'str'>
結構化時間(struct_time):struct_time元祖共有九個元素,分別爲(年,月,日,時,分,秒,一年中的第幾周,一年中的第幾天,夏令時)blog
print(f'本地時區的struct_time:\n{time.localtime()}') print(f'UTC時區的struct_time:\n{time.gmtime()}') # 本地時區的struct_time: # time.struct_time(tm_year=2019, tm_mon=9, tm_mday=15, tm_hour=14, tm_min=21, tm_sec=6, tm_wday=6, tm_yday=258, tm_isdst=0) # UTC時區的struct_time: # time.struct_time(tm_year=2019, tm_mon=9, tm_mday=15, tm_hour=6, tm_min=21, tm_sec=6, tm_wday=6, tm_yday=258, tm_isdst=0)
#結構化時間的基準時間 print(time.localtime(0)) # time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
# 結構化時間的基準時間加上一年的時間 print(time.localtime(3600*24*365)) # time.struct_time(tm_year=1971, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=1, tm_isdst=0)
如上圖所示,咱們總能經過某種方法在結構化時間-格式化時間-時間戳三者之間進行轉換,下面咱們將用代碼展現如何經過這些方法轉換時間格式。字符串
結構化時間string
now_time = time.localtime() print(now_time) # time.struct_time(tm_year=2019, tm_mon=9, tm_mday=15, tm_hour=14, tm_min=31, tm_sec=22, tm_wday=6, tm_yday=258, tm_isdst=0)
把結構化時間轉換爲時間戳格式it
print(time.mktime(now_time)) # 1568529137.0
把結構化時間轉換爲格式化時間form
# %Y年-%m月-%d天 %X時分秒=%H時:%M分:%S秒 print(time.strftime("%Y-%m-%d %X", now_time)) # 2019-09-15 14:33:12
把格式化時間化爲結構化時間,它和strftime()是逆操做class
print(time.strptime('2013-05-20 13:14:52', '%Y-%m-%d %X')) time.struct_time(tm_year=2013, tm_mon=5, tm_mday=20, tm_hour=13, tm_min=14, tm_sec=52, tm_wday=0, tm_yday=140, tm_isdst=-1)
把結構化時間表示爲這種形式:'Sun Jun 20 23:21:05 1993'。import
print(time.asctime()) # Sun Sep 15 14:36:09 2019
若是沒有參數,將會將time.localtime()做爲參數傳入。
print(time.asctime(time.localtime())) # Sun Sep 15 14:36:09 2019
把一個時間戳轉化爲time.asctime()的形式。
print(time.ctime()) # Sun Sep 15 14:36:09 2019
若是參數未給或者爲None的時候,將會默認time.time()爲參數。它的做用至關於
time.asctime(time.localtime(secs))。 print(time.ctime(time.time())) # Sun Sep 15 14:36:09 2019
推遲指定的時間運行,單位爲秒
start = time.time() time.sleep(3) end = time.time() print(end-start) # 3.000171422958374