python時間轉換
阿新 • • 發佈:2021-01-12
1.時間戳轉換為時間
from datetime import datetime timeStamp = 1381419600 dateArray = datetime.utcfromtimestamp(timeStamp) dateArray1 = datetime.fromtimestamp(timeStamp) print(dateArray1) #2013-10-10 23:40:00 print(dateArray) #2013-10-10 15:40:00 print(type(dateArray)) #<class 'datetime.datetime'> otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S") print(otherStyleTime) #2013-10-10 15:40:00 print(type(otherStyleTime)) #<class 'str'>
2.在使用xlrd讀取Excel表格中的日期格式時,讀出的內容和原來Excel表格中的內容不一致。讀取出來的是一個浮點數。導致不能正確使用。而xldate_as_tuple方法可以很好地解決這個問題。
import xlrd from xlrd import xldate_as_tuple #開啟原表 data = xlrd.open_workbook('test.xlsx') table= data.sheets()[0] pickupTimePhasetime = xldate_as_tuple(table.cell_value(0,0),0) print(pickupTimePhasetime) #(2021, 1, 7, 12, 23, 0),型別 tuple pickupTimePhase = str(pickupTimePhasetime[0]) + '-' + str(pickupTimePhasetime[1]) + '-' + str( pickupTimePhasetime[2]) + ' ' + str(pickupTimePhasetime[3]) + ':' + str(pickupTimePhasetime[4]) + ':' + str( pickupTimePhasetime[5]) print(pickupTimePhase) #2021-1-7 12:23:0,型別 str
3.日期轉換為時間戳
import time # 字元型別的時間 tss1 = '2013-10-10 23:40:00' # 轉為時間陣列 timeArray = time.strptime(tss1,"%Y-%m-%d %H:%M:%S") print(timeArray) print(type(timeArray)) #<class 'time.struct_time'> # timeArray可以呼叫tm_year等 print(timeArray.tm_year) # 2013 # 轉為時間戳 timeStamp = int(time.mktime(timeArray)) print(timeStamp) # 1381419600 #轉換為毫秒 print(timeStamp*1000) #1381419600000
4.比較大小,通過time模組可以直接比較大小,也可以通過時間戳比較大小
import time # 字元型別的時間 tss1 = '2013-10-10 23:40:00' # 轉為時間陣列 timeArray1 = time.strptime(tss1,"%Y-%m-%d %H:%M:%S") # 轉為時間戳 timeStamp1 = int(time.mktime(timeArray1)) #print(timeStamp1) # 1381419600 tss2 = '2013-10-11 23:40:00' timeArray2 = time.strptime(tss2,"%Y-%m-%d %H:%M:%S") timeStamp2 = int(time.mktime(timeArray2)) #print(timeStamp2) # 1381506000 #time模組可以直接比較大小 if timeArray1 < timeArray2: print("通過時間模組判斷PASS") #通過時間戳比較大小 if timeStamp1 < timeStamp2: print("通過時間戳判斷PASS")