Python time模組總結

2021-08-22 00:14:18 字數 2447 閱讀 3321

工作中總能用到time, datetime模組,多數時候用於時間日期不同格式間的轉換。如果沒有熟練掌握各函式用法,那麼將不能快速解決問題。今天詳細整理一下time模組的用法,有不當之處還請指正。

先上總結:

import time

time.time() # 返回當前時間戳

time.mktime(tupletime) # 接受時間元組,返回時間戳

time.localtime(secs) # 接收時間戳,返回時間元組

time.strptime(date_str,fmt) # 接收日期,返回時間元組

time.asctime(tupletime) # 接收時間元組,返回格式化日期

time.strftime(fmt,tupletime) # 接收時間元組,返回格式化日期

從上面可以看出,主要有三類資料:時間戳,時間元組,格式化日期。主要的操作就是三類資料間的轉換。

下面結合例項來實踐一下,彼此之前的轉換。

1.當前時間戳

time.time() # 當前時間戳

>>>1533103691.808361

2. 當前時間元組

time.localtime() # 當前時間元組

>>>time.struct_time(tm_year=2018, tm_mon=8, tm_mday=1, tm_hour=14, tm_min=10, tm_sec=46, tm_wday=2, tm_yday=213, tm_isdst=0)

解釋一下時間元組裡引數意思:

tm_year : 當前年份, tm_mon : 當前月份, tm_mday :  當前月的日期,

tm_hour : 當前小時, tm_min : 當前分鐘, tm_sec : 當前秒數,

tm_wday : 星期(從0開始), tm_yday : 一年中第幾天, tm_isdst : 是否夏令時。

那麼元組的引數有什麼用呢,比如可以獲取當前年份、月份、一年中第幾天等。

time.localtime().tm_yday # 一年中第幾天

>>>213

time.localtime().tm_year # 年份

>>>2018

time.localtime().tm_mon # 月份

>>>8

3.按0000-00-00 00:00:00顯示當前日期時間

time.strftime('%y-%m-%d %h:%m:%s',time.localtime()) # 當前日期時間

>>>'2018-08-01 14:24:08'

4.把指定日期時間轉換成時間戳 - 按照日期形式補格式化引數

s = "sat mar 28 22:24:24 2016"

time.mktime(time.strptime(s,"%a %b %d %h:%m:%s %y")) # 將指定日期轉換成時間戳

>>>1459175064.0

s = '2018-05-20 14:32:29'

time.mktime(time.strptime(s,'%y-%m-%d %h:%m:%s')) # 將指定日期轉換成時間戳

>>>1526797949.0

5.把指定日期時間轉成時間元組-  按照日期形式補格式化引數

s = '2018-05-20 14:32:29'

time.strptime(s,'%y-%m-%d %h:%m:%s') # 轉成時間元組

>>>time.struct_time(tm_year=2018, tm_mon=5, tm_mday=20, tm_hour=14, tm_min=32, tm_sec=29, tm_wday=6, tm_yday=140, tm_isdst=-1)

6.把指定時間戳轉成格式化日期時間

time.strftime('%y-%m-%d %h:%m:%s',time.localtime(1526797949)) # 把時間戳轉成格式化日期時間

>>>'2018-05-20 14:32:29'

7.獲取指定日期時間兩天後的日期時間 - 先獲取時間戳,再計算兩天後的時間戳,然後再轉成格式化日期

s = '2018-05-20 10:32:29'

timestamp = time.mktime(time.strptime(s,'%y-%m-%d %h:%m:%s')) # 獲取時間戳

next_time = timestamp+3600*24*2 # 兩天後的時間戳

time.strftime('%y-%m-%d %h:%m:%s',time.localtime(next_time)) # 獲取格式化日期

>>>'2018-05-22 10:32:29'

Python time模組操作

參考 python 程式能用很多方式處理日期和時間,轉換日期格式是乙個常見的功能。python 提供了乙個 time 和 calendar 模組可以用於格式化日期和時間。時間間隔是以秒為單位的浮點小數。每個時間戳都以自從1970年1月1日午夜 曆元 經過了多長時間來表示。python 的 time ...

python time模組詳解

time模組中時間表現的格式主要有三種 a timestamp時間戳,時間戳表示的是從1970年1月1日00 00 00開始按秒計算的偏移量 b struct time時間元組,共有九個元素組。c format time 格式化時間,已格式化的結構使時間更具可讀性。包括自定義格式和固定格式。1 時間...

python time時間模組

想讓程式停頓幾秒鐘 time.sleep 秒數 例如 print 1 time.sleep 2 print 2 結果,在列印了1後會停2秒,然後再列印2 三種時間格式 時間戳,是計算機可識別的乙個時間形態 格式化時間字串,是人類可識別的乙個時間形態 時間元組,則是二個時間的過渡體 可以把這三者間的關...