- 获取到两个日期中间相差几年,几个月和几天
# 时间间隔(常规)
import datetime
today = datetime.date.today()
my_birthday = datetime.date(year=2020, month=9, day=19)
print('我已经出生' + str((today - my_birthday).days) + '天')
# 时间间隔(dateutil)
from dateutil.relativedelta import relativedelta
diff = relativedelta(today, my_birthday)
# diff = relativedelta(years=+26, months=+8, days=+17)
print(diff.years) # dateutil 特有
print(diff.months) # dateutil 特有
print(diff.days)
- 其他常用
# datetime
# 时间类型
user_time = datetime.datetime(2018, 8, 3, 15, 30) #<class 'datetime.datetime'>
user_time1=user_time.strftime("%Y-%m-%d %H:%M:%S") #<class 'str'>
# 创建时间
user_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") # .strftime('%Y/%m/%d')
user_time = datetime.datetime(2018, 8, 3, 15, 30).strftime("%Y-%m-%d %H:%M:%S")
# 今天
today = time.strftime("%Y-%m-%d", time.localtime())
today = datetime.datetime(2020, 11, 17).strftime("%Y-%m-%d")
# 一星期前
week_ago = datetime.date.today() - datetime.timedelta(days=7)
week_ago = datetime.datetime(2020, 11, 17).date() - datetime.timedelta(days=7)
# timedelta
check_day = (datetime.now() + timedelta(days=int(rate))).strftime('%Y/%m/%d')
- 应用
# 30天理财时间
import datetime
_30days = datetime.datetime(2021, 2, 17).date() + datetime.timedelta(days=30)