在python中,時間一共有三種形式:python
1.時間戳 給機器看的 時間戳是以浮點數的形式顯示,以1970-01-01 00:00:00爲原點,慢慢日後加數造成的數據庫
2.格式化時間 給人看的spa
3.結構化時間 用來計算的code
import time print(time.time()) # 1553992174.0139978 時間戳,有時候數據庫中存的就是時間戳 #時間戳是以1970-01-01 00:00:00爲原點 每一秒一個數字造成的 相似於數軸 #格式化時間 給人看的 print(time.strftime("%Y-%m-%d %H:%M:%S")) #%Y-%m-%d %H:%M:%S 顯示時間的格式 #結構化時間 用來計算的xx print(time.localtime())
格式化時間是,咱們能夠採起不從的格式讓時間顯示不一樣的樣式,下邊是日期格式化的標準,咱們能夠根據這些標準來自定義咱們的格式化時間blog
"""日期格式化的標準: %y 兩位數的年年份表示(00-99) %Y 四位數的年年份表示(000-9999) %m ⽉月份(01-12) %d ⽉月內中的⼀一天(0-31) %H 24⼩小時制⼩小時數(0-23) %I 12⼩小時制⼩小時數(01-12) %M 分鐘數(00=59) %S 秒(00-59) %a 本地簡化星期名稱 %A 本地完整星期名稱 %b 本地簡化的⽉月份名稱 %B 本地完整的⽉月份名稱 %c 本地相應的⽇日期表示和時間表示 %j 年年內的⼀一天(001-366) %p 本地A.M.或P.M.的等價符 %U ⼀一年年中的星期數(00-53)星期天爲星期的開始 %w 星期(0-6),星期天爲星期的開始 %W ⼀一年年中的星期數(00-53)星期⼀一爲星期的開始 %x 本地相應的⽇日期表示 %X 本地相應的時間表示 %Z 當前時區的名稱 %% %號自己 """
另外,咱們再往數據庫中存入的是時間戳,但是咱們從數據庫中拿出來看到的想要是時間,那要求咱們會格式化時間與時間戳的相互轉化class
1.時間戳轉化爲格式化時間import
f = 11212156.323 st = time.localtime(f) #把時間戳轉化爲結構化時間 t = time.strftime("%Y-%m-%d %H:%M:%S",st) #把結構化時間轉化爲格式化時間 print(t)
運行結果:im
1970-05-11 02:29:16
2.格式化時間轉化爲時間戳時間戳
import time t = "1970-05-11 02:29:16" st = time.strptime(t,"%Y-%m-%d %H:%M:%S") #把格式化時間轉化爲結構化時間 f = time.mktime(st) #把結構化世間轉化爲時間戳 print(f)
運行結果:數據
11212156.0
咱們發現,無論是要將格式化時間轉化爲時間戳,仍是要將時間戳轉化爲格式化時間,必定要通過轉化爲結構化時間這一步,咱們能夠這樣理解,結構化時間是格式化時間與時間戳之間相互轉化的橋樑