分享

dateutil 时间模块

 Coder编程 2022-11-04 发布于北京
  1. 获取到两个日期中间相差几年,几个月和几天

# 时间间隔(常规)
import datetime
today = datetime.date.today()
my_birthday = datetime.date(year=1980, month=12, day=12)
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)

  1. 其他常用

# 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')

  1. 应用

# 30天理财时间
import datetime
_30days = datetime.datetime(2021, 2, 17).date() + datetime.timedelta(days=30)


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约