python datetime模块
导包
from datetime import datetime
now = datetime.now()
print(now)
print(type(now))
print(now.year)
print(now.month)
print(now.day)
print(now.hour)
print(now.minute)
print(now.second)
print(now.microsecond)

from datetime import timedelta
两个datetime对象相减,得到的是一个timedelta对象
# 计算时间间隔
delta1 = datetime(2022, 6, 30, 20) - datetime(2022, 2, 2, 1)
print(delta1)
print(type(delta1))

如图,表示148天零19个小时。
print(datetime(2022, 6, 10) + delta1)

timedelta传入不同数量的参数,表示的含义汇总如下。
第一个表示天数,第二个表示秒数,第三个表示微秒。第四个表示毫秒,第五个表示分钟,第六个表示小时。
print(timedelta(10))
print(timedelta(10,11))
print(timedelta(10, 11, 12))
print(timedelta(10, 11, 12, 13))
print(timedelta(10, 11, 12, 13, 14))
print(timedelta(10, 11, 12, 13, 14, 15))

stamp = datetime(2022, 6, 22)
# 强制转换字符串
print(str(stamp))
# 格式化 转换 字符串
print(stamp.strftime("%Y/%m/%d %H:%M:%S"))
print(stamp.strftime("%Y-%m-%d %H:%M:%S"))
print(stamp.strftime("%Y/%m/%d"))
print(stamp.strftime("%Y-%m-%d"))

dates = ['1/6/2022', '6/1/2022']
datelist = [datetime.strptime(i, "%m/%d/%Y") for i in dates]
print(datelist)

将字符串形式的日期解析成datetime对象。
字符串写法可以有很多,如下示例。
from dateutil.parser import parse
print(parse('1/6/2022'))
print(parse('2022-6-2'))
print(parse('2022.6.3'))
print(parse('2022 6 4'))
print(parse('2022, 6, 5'))
