93-time模塊

time模塊

一.time模塊

import time

1.1 時間戳

時間戳(timestamp):時間戳表示從1970年1月1日00:00:00:開始按秒九三的時間偏移量code

import time

time_stamp = time.time()
print(time_stamp,type(time_stamp))

1.2 格式化時間

格式化時間字符串(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'>

1.3 結構化時間

結構化時間(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)

1.4 不一樣格式時間之間的轉換

如上圖所示,咱們總能經過某種方法在結構化時間-格式化時間-時間戳三者之間進行轉換,下面咱們將用代碼展現如何經過這些方法轉換時間格式。字符串

結構化時間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

1.5 其它用法

推遲指定的時間運行,單位爲秒

start = time.time()
time.sleep(3)
end = time.time()

print(end-start)

# 3.000171422958374
相關文章
相關標籤/搜索