您好,登錄后才能下訂單哦!
這篇文章主要介紹了Python中時間格式轉(zhuǎn)換的方法有哪些的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Python中時間格式轉(zhuǎn)換的方法有哪些文章都會有所收獲,下面我們一起來看看吧。
1. 時間元組和時間戳的互化
import time,datetime # 獲取當(dāng)前時間的時間元組 t = time.localtime() print(t) # 時間元組轉(zhuǎn)時間戳 timestamp = time.mktime(t) print(timestamp) # time.struct_time(tm_year=2019, tm_mon=10, tm_mday=23, tm_hour=23, tm_min=15, tm_sec=41, tm_wday=2, tm_yday=296, tm_isdst=0) # 1571843741.0 # 獲取時間戳 ts = time.time() # 時間戳轉(zhuǎn)時間元組 # 方法一 print('法一:',time.localtime(ts)) # 方法二 print('法二:',time.gmtime(ts)) # 兩種方法的區(qū)別只有小時的輸出不同,法一的小時是24小時制的,法二是12小時的 # time.struct_time(tm_year=2019, tm_mon=10, tm_mday=23, tm_hour=23, tm_min=10, tm_sec=14, tm_wday=2, tm_yday=296, tm_isdst=0) # time.struct_time(tm_year=2019, tm_mon=10, tm_mday=23, tm_hour=15, tm_min=10, tm_sec=14, tm_wday=2, tm_yday=296, tm_isdst=0)
2. 時間元組和字符串的互化
import time # 字符串轉(zhuǎn)時間元組 # 字符類型的時間 t1 = '2013-10-10 23:40:00' # 轉(zhuǎn)為時間元組,時間元組本身沒有直接的用處,但它可以輸出時間的年月日時分秒等 # 注意這里的字符串除了%Y %m %d %H %M %S分別代表字符串中的年月日時分秒, # 這里的格式必須和字符串一模一樣,由于字符串中間有空格,它也不能少 timeArray = time.strptime(t1, "%Y-%m-%d %H:%M:%S") print('并沒有直接的用處:', timeArray) print('輸出年:', timeArray.tm_year) print('輸出月:', timeArray.tm_mon) print('輸出日:', timeArray.tm_mday) print('輸出時:', timeArray.tm_hour) print('輸出分:', timeArray.tm_min) print('輸出秒:', timeArray.tm_sec) # 當(dāng)用%Y時表示的是年份的全稱,當(dāng)用%y時表示簡稱, # 月份和小時沒有這種用法,它們只用小寫,時分秒的貌似只用大寫 t2 = '19/09/05 22/16' timeArray = time.strptime(t2, "%y/%m/%d %H/%M") print(timeArray) # 并沒有直接的用處: time.struct_time(tm_year=2013, tm_mon=10, tm_mday=10, tm_hour=23, tm_min=40, tm_sec=0, tm_wday=3, tm_yday=283, tm_isdst=-1) # 輸出年: 2013 # 輸出月: 10 # 輸出日: 10 # 輸出時: 23 # 輸出分: 40 # 輸出秒: 0 # time.struct_time(tm_year=2019, tm_mon=9, tm_mday=5, tm_hour=22, tm_min=16, tm_sec=0, tm_wday=3, tm_yday=248, tm_isdst=-1) # 時間元組轉(zhuǎn)字符串 ts = time.strftime("%Y/%m/%d %H:%M:%S", timeArray) print(ts) # 2019/09/05 22:16:00
字符串與時間戳不能直接轉(zhuǎn)化,要通過時間元組來完成,時間元組是中介.
轉(zhuǎn)化圖:
時間元組不能加減,要用datetime格式的時間才能加減.下面是字符串轉(zhuǎn)為datetime后,進(jìn)行時間加減運(yùn)算.
import datetime start = '2019-07-28 00:00:08' end = '2019-07-29 00:50:03' # 先將字符串轉(zhuǎn)化為時間格式 a = datetime.datetime.strptime(start, "%Y-%m-%d %H:%M:%S") b = datetime.datetime.strptime(end, "%Y-%m-%d %H:%M:%S") print(a,b) # 只能直接計(jì)算秒和天,其它的不能 # seconds獲得的秒只是時間差中的小時、分鐘和秒部分的和,并沒有包含時間差的天數(shù) print((b-a).seconds) # total_seconds來獲取準(zhǔn)確的時間差,并將時間差轉(zhuǎn)換為秒 print((b-a).total_seconds()) # 如果不夠一天,會輸出0 print((b-a).days) # 時間相加 c = a + datetime.timedelta(hours=5,seconds=68) d = a - datetime.timedelta(days=69,minutes=89) print(c,d) # 2019-07-28 00:00:08 2019-07-29 00:50:03 # 2995 # 89395.0 # 1 # 2019-07-28 05:01:16 2019-05-19 22:31:08
關(guān)于“Python中時間格式轉(zhuǎn)換的方法有哪些”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“Python中時間格式轉(zhuǎn)換的方法有哪些”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。