Python時間格式化

對於時間數據,如2016-05-05 20:28:54,有時需要與時間戳進行相互的運算,此時就需要對兩種形式進行轉換,在Python中,轉換時需要用到time模塊,具體的操作有如下的幾種:

  • 將時間轉換爲時間戳
  • 重新格式化時間
  • 時間戳轉換爲時間
  • 獲取當前時間及將其轉換成時間戳

1、將時間轉換成時間戳

將如上的時間2016-05-05 20:28:54轉換成時間戳,具體的操作過程爲:

  • 利用strptime()函數將時間轉換成時間數組
  • 利用mktime()函數將時間數組轉換成時間戳
#coding:UTF-8
import time

dt = "2016-05-05 20:28:54"

#轉換成時間數組
timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S")
#轉換成時間戳
timestamp = time.mktime(timeArray)

print timestamp
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

2、重新格式化時間

重新格式化時間需要以下的兩個步驟:

  • 利用strptime()函數將時間轉換成時間數組
  • 利用strftime()函數重新格式化時間
#coding:UTF-8
import time

dt = "2016-05-05 20:28:54"

#轉換成時間數組
timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S")
#轉換成新的時間格式(20160505-20:28:54)
dt_new = time.strftime("%Y%m%d-%H:%M:%S",timeArray)

print dt_new
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

3、將時間戳轉換成時間

在時間戳轉換成時間中,首先需要將時間戳轉換成localtime,再轉換成時間的具體格式:

  • 利用localtime()函數將時間戳轉化成localtime的格式
  • 利用strftime()函數重新格式化時間
#coding:UTF-8
import time

timestamp = 1462451334

#轉換成localtime
time_local = time.localtime(timestamp)
#轉換成新的時間格式(2016-05-05 20:28:54)
dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local)

print dt
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

4、按指定的格式獲取當前時間

利用time()獲取當前時間,再利用localtime()函數轉換爲localtime,最後利用strftime()函數重新格式化時間。

#coding:UTF-8
import time

#獲取當前時間
time_now = int(time.time())
#轉換成localtime
time_local = time.localtime(time_now)
#轉換成新的時間格式(2016-05-09 18:59:20)
dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local)

print dt
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
        <link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/markdown_views-ea0013b516.css">
            </div>

5、使用datetime模塊求前一天後一天

這裏寫圖片描述
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章