1.導入datetime模塊
import datetime
2.獲取當前日期和時間
import datetime now_time = datetime.datetime.now() print(now_time) 結果: 2020-03-23 15:28:51.143440
3.轉換成我們想要的日期,去除時間
import datetime now_time=datetime.datetime.now().strftime('%Y-%m-%d') print(now_time) 結果: 2020-03-23
4.在當前時間的后一天、前1小時
獲取當天日期 now_time=datetime.datetime.now() print((now_time+datetime.timedelta(days=+1)).strftime("%Y-%m-%d %H:%M:%S")) #獲取后一天 print ((now_time+datetime.timedelta(hours=-1)).strftime("%Y-%m-%d %H:%M:%S")) #獲取前一小時 print(now_time.strftime("%Y-%m-%d %H:%M:%S"),(now_time+datetime.timedelta(minutes=+1)).strftime("%Y-%m-%d %H:%M:%S")) #前一分鍾后一分鍾 print(now_time.strftime("%Y-%m-%d %H:%M:%S"),(now_time+datetime.timedelta(minutes=+1/60)).strftime("%Y-%m-%d %H:%M:%S"))#前一秒后一秒
import datetime # 當前時間為:2020-03-23 15:48:54.910465 ''' datetime.datetime.now():當前時間 datetime.timedelta(hours=1):加1小時 now_hour=add_hour.strftime('%H'):獲取加一小時后的小時時間 ''' add_hour=datetime.datetime.now()+datetime.timedelta(hours=1) print(add_hour) now_hour=add_hour.strftime('%H') print(now_hour) 結果: 2020-03-23 16:48:54.910465 16
5.時間的三種存在方式:時間格式,時間字符串,時間戳
5.1字符串轉datetime:
import datetime string = '2020-03-23 16:48:54' time1 = datetime.datetime.strptime(string,'%Y-%m-%d %H:%M:%S') print(type(time1)) 結果: <class 'datetime.datetime'>
5.2datetime轉字符串:
import datetime string = '2020-03-23 16:48:54' time1 = datetime.datetime.strptime(string,'%Y-%m-%d %H:%M:%S') time1_str = datetime.datetime.strftime(time1,'%Y-%m-%d %H:%M:%S') print(type(time1_str)) 結果: <class 'str'>
5.3datetime轉時間戳
import time # 將如上的時間2020-03-23 5:21:00轉換成時間戳,具體的操作過程為: # 利用strptime()函數將時間轉換成時間數組 # 利用mktime()函數將時間數組轉換成時間戳 dt = "2020-03-23 5:21:00" #轉換成時間數組 timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S") #轉換成時間戳 t = time.mktime(timeArray) print(t) 結果: 1584912060.0
5.4時間戳轉時間字符串
import time # 在時間戳轉換成時間中,首先需要將時間戳轉換成localtime,再轉換成時間的具體格式:# # 利用localtime()函數將時間戳轉化成localtime的格式 # 利用strftime()函數重新格式化時間 timestamp = 1584912060.0 #轉換成localtime time_local = time.localtime(timestamp) #轉換成新的時間格式(2016-05-05 20:28:54) data = time.strftime("%Y-%m-%d %H:%M:%S",time_local) print(data) print(type(data)) 結果: 2020-03-23 05:21:00 <class 'str'>
6.時間的格式參數
%a 星期幾的簡寫
%A 星期幾的全稱
%b 月分的簡寫
%B 月份的全稱
%c 標准的日期的時間串
%C 年份的后兩位數字
%d 十進制表示的每月的第幾天
%D 月/天/年
%e 在兩字符域中,十進制表示的每月的第幾天
%F 年-月-日
%g 年份的后兩位數字,使用基於周的年
%G 年分,使用基於周的年
%h 簡寫的月份名
%H 24小時制的小時
%I 12小時制的小時
%j 十進制表示的每年的第幾天
%m 十進制表示的月份
%M 十時制表示的分鍾數
%n 新行符
%p 本地的AM或PM的等價顯示
%r 12小時的時間
%R 顯示小時和分鍾:hh:mm
%S 十進制的秒數
%t 水平制表符
%T 顯示時分秒:hh:mm:ss
%u 每周的第幾天,星期一為第一天 (值從0到6,星期一為0)
%U 第年的第幾周,把星期日做為第一天(值從0到53)
%V 每年的第幾周,使用基於周的年
%w 十進制表示的星期幾(值從0到6,星期天為0)
%W 每年的第幾周,把星期一做為第一天(值從0到53)
%x 標准的日期串
%X 標准的時間串
%y 不帶世紀的十進制年份(值從0到99)
%Y 帶世紀部分的十制年份
%z,%Z 時區名稱,如果不能得到時區名稱則返回空字符。
%% 百分號