時間模塊主要有:
datetime.date()
,
datetime.datetime()
,
datetime.timedelta()
1.時間模塊datetime
1.1 date
date
主要用於獲取日期,例如獲取當前日期或者特定日期,獲取的日期可以由str方法直接轉化為字符串格式
from datetime import date
today = date.today() # 獲取當天日期
print(today,type(today)) # 打印結果:2020-02-08 <class 'datetime.date'>
print(str(today),type(str(today))) # 將日期轉化為字符串,打印結果:2020-02-08 <class 'str'>
t = date(2016,1,6) # 取得指定日期,格式為:date(年,月,日)
print(t,type(t)) # 打印結果:2016-01-06 <class 'datetime.date'>
1.2 datetime
datetime
主要用於獲取時間,例如獲取當前時間或者特定時間,獲取的時間可以由str方法直接轉化為字符串格式
from datetime import datetime
now = datetime.now() # datetime.today()與 datetime.now()效果一樣
print(now,type(now)) # 獲取當前時間。打印結果:2020-02-08 13:22:42.283616 <class 'datetime.datetime'>
print(str(now),type(str(now))) # 可通過str轉化為字符串,打印結果:2020-02-08 13:22:42.283616 <class 'str'>
t1 = datetime(2016,6,1)
t2 = datetime(2016,8,2,12,20,45) # 格式為(年,月,日,時,分,秒),至少輸入年月日
print(t1) # 打印結果:2016-06-01 00:00:00
print(t2) # 打印結果:2016-08-02 12:20:45
print(t2-t1) # 62 days, 12:20:45
1.3 timedelta
timedelta
主要作為時間差,主要用於時間的加減法,例如:獲取昨天、上月等時間
import datetime
from datetime import timedelta
today = datetime.datetime.today()
yesterday = today - timedelta(1)
print(today) # 2020-02-08 14:21:35.572566
print(yesterday) # 2020-02-07 14:21:35.572566
2.日期解析方法dateutil.parser.parse
parse
主要用於時間解析,可以直接將字符串轉化為時間類型
from dateutil.parser import parse
date = '12-31-2019'
t = parse(date) # 將字符串轉化為datetime.datetime
print(date,type(t)) # 12-31-2019 <class 'datetime.datetime'>
print(parse('2020-1-1'),'\n',
parse('5/1/2019'),'\n',
parse('5/1/2019', dayfirst = True),'\n', # 國際通用格式中,日在月之前,可以通過dayfirst來設置
parse('22/1/2019'),'\n',
parse('Jan 31, 2019 10:45 PM'))