datetime模塊包含一下四個類:
- datetime.time:時間類,只包含時、分、秒、微秒等時間信息。
- datetime.date:日期類,只包含年、月、日、星期等日期信息。
- datetime.datetime:日期時間類,包含以上兩者的全部信息。
- datetime.timedelta:時間日期差值類,用來表示兩個datetime之間的差值。
1.字符串更改
timeStr = "2018-06-01 18:30:00" # 時間字符串 timeArray = time.strptime(timeStr, "%Y-%m-%d %H:%M:%S") # 時間數組 otherTimeStr = time.strftime("%Y/%m/%d %H:%M:%S", timeArray) print(otherTimeStr)
2.時間字符串轉換爲時間戳
timeStr = "2018-06-01 18:30:00" timeArray = time.strptime(timeStr, "%Y-%m-%d %H:%M:%S") timeStamp = int(time.mktime(timeArray)) print(timeStamp)
3.時間戳轉換爲時間字符串
# 方法一 timeStamp = 1527849000 timeArray = time.localtime(timeStamp) timeStr = time.strftime("%Y-%m-%d %H:%M:%S", timeArray) print(timeStr) # 方法二 timeStamp = 1527849000 dateArray = datetime.datetime.utcfromtimestamp(timeStamp) dateStr = dateArray.strftime("%Y-%m-%d %H:%M:%S") print(dateStr)
4.日期字符串轉換爲datetime對象
dateStr = '2018-06-01 18:30:00' datetimeObj = datetime.datetime.strptime(dateStr, "%Y-%m-%d %H:%M:%S") print(datetimeObj)
5.日期字符串相減
dateStr1 = '2018-06-01 18:30:00' dateStr2 = '2018-06-03 19:45:10' datetimeObj1 = datetime.datetime.strptime(dateStr1, "%Y-%m-%d %H:%M:%S") datetimeObj2 = datetime.datetime.strptime(dateStr2, "%Y-%m-%d %H:%M:%S") print((datetimeObj2-datetimeObj1)) print((datetimeObj2-datetimeObj1).days) print((datetimeObj2-datetimeObj1).seconds)
6.日期字符串加上一個時間
dateStr = '2018-06-01 18:30:00' datetimeObj = datetime.datetime.strptime(dateStr, "%Y-%m-%d %H:%M:%S") dateStr = datetimeObj + datetime.timedelta(days=1, hours=1, minutes=10, seconds=15) print(dateStr)
7.獲取當前時間
now_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) print(now_time)