当前位置: 首页 > news >正文

在 Python 中将天数添加到日期

使用 datetime 模块中的 timedelta() 方法将天数添加到日期中,例如 result_1 = date_1 + timedelta(days=3)timedelta 方法可以传递天数参数并将指定的天数添加到日期。

from datetime import datetime, date, timedelta# ✅ 将天数添加到日期
my_str = '09-24-2023'  # 👉️ (mm-dd-yyyy)
date_1 = datetime.strptime(my_str, '%m-%d-%Y')print(date_1)  # 👉️ 2023-09-24 00:00:00result_1 = date_1 + timedelta(days=3)
print(result_1)  # 👉️ 2023-09-27 00:00:00# -----------------------------------------------# ✅ 将天数添加到当前日期current_date = datetime.today()
print(current_date)  # 👉️ 2022-06-20 09:42:22.341830result_2 = current_date + timedelta(days=7)
print(result_2)  # 👉️ 2022-06-27 09:43:09.084770# -----------------------------------------------# ✅ 使用 date 而不是 datetimedate_3 = date(2023, 9, 24)
print(date_3)  # 👉️ 2023-09-24result_3 = date_3 + timedelta(days=3)
print(result_3)  # 👉️ 2023-09-27# -----------------------------------------------# ✅ 将天数添加到当前日期(使用 date 而不是 datetime)date_4 = date.today()
print(date_4)  # 👉️ 2022-06-20result_4 = date_4 + timedelta(days=7)
print(result_4)  # 👉️ 2022-06-27

确保从 datetime 模块导入 datetimedatetimedelta 类。

使用此方法时,月份(和年份)将在必要时滚动。

第一个示例使用 datetime.strptime() 方法获取与提供的日期字符串对应的日期时间对象,并根据指定格式进行解析。

一旦我们有了 datetime 对象,我们就可以使用 timedelta 类来添加天数。

from datetime import datetime, timedeltamy_str = '09-24-2023'  # 👉️ (mm-dd-yyyy)date_1 = datetime.strptime(my_str, '%m-%d-%Y')
print(date_1)  # 👉️ 2023-09-24 00:00:00result_1 = date_1 + timedelta(days=3)
print(result_1)  # 👉️ 2023-09-27 00:00:00

示例中的日期字符串格式为 mm-dd-yyyy

如果我们有一个以不同方式格式化的日期字符串,请使用此文档表来查找您应该作为第二个参数传递给 strptime() 方法的格式代码。

第二个示例将天数添加到当前日期。

from datetime import datetime, timedeltacurrent_date = datetime.today()
print(current_date)  # 👉️ 2022-06-20 09:42:22.341830result_2 = current_date + timedelta(days=7)
print(result_2)  # 👉️ 2022-06-27 09:43:09.084770

datetime.today() 方法返回当前本地日期时间。

第三个示例在向日期添加天数时使用 date() 方法而不是 datetime 方法。

from datetime import date, timedeltadate_3 = date(2023, 9, 24)
print(date_3)  # 👉️ 2023-09-24result_3 = date_3 + timedelta(days=3)
print(result_3)  # 👉️ 2023-09-27

datetime.timedelta 方法可以传递我们想要添加到 datedatetime 对象的天数。

timedelta 方法可以将天、周、小时、分钟、秒、毫秒和微秒作为参数传递。

所有参数都是可选的,默认为 0。

最好只在对 timedelta 类的调用中使用关键字参数,因为参数的顺序可能会造成混淆。

如果我们只需要在操作后提取日期,请在 datetime 对象上调用 date() 方法。

from datetime import datetime, timedeltanow = datetime.now()
print(now)  result = now + timedelta(days=5)
print(result)  print(result.date())  

datetime.date 方法返回具有相同年月日的日期对象。

如果我们需要以某种方式格式化日期,请使用格式化字符串文字。

from datetime import datetime, timedeltanow = datetime.now()
print(now)  result = now + timedelta(days=6)
print(result)  print(result.date())  print(f'{result:%Y-%m-%d %H:%M:%S}')  

格式化字符串文字 (f-strings) 让我们通过在字符串前加上 f 来在字符串中包含表达式。

确保将表达式用大括号括起来 - {expression}

格式化字符串文字还使我们能够在表达式块中使用格式规范迷你语言。

第四个示例将天数添加到表示当前日期的 date 对象。

from datetime import date, timedeltadate_4 = date.today()
print(date_4) result_4 = date_4 + timedelta(days=7)
print(result_4) 

date.today 方法返回一个表示当前本地日期的 date 对象。

http://www.lryc.cn/news/43743.html

相关文章:

  • vue3知识点
  • 一行代码生成Tableau可视化图表
  • 链表——删除元素或插入元素(头插法及尾插法)
  • oracle容器的使用
  • 基于springboot会员制医疗预约服务管理信息系统演示【附项目源码】
  • GoogleAdsense国内加载慢怎么解决?
  • 【MySQL专题】03、性能优化之读写分离(MaxScale)
  • Redis7高级之BigKey(二)
  • flex弹性盒子
  • [Java Web]Cookie | 一文详细介绍会话跟踪技术中的Cookie
  • 这可能是2023最全的Java面试八股文,共计1658页,Java技术手册的天花板
  • 字节流及存放本地文件上传和下载文件
  • 【翻译】下一步:Go 泛型
  • 如何简单实现ELT?
  • 细思极恐,第三方跟踪器正在获取你的数据,如何防范?
  • Java基础之==,equal的区别(温故而知新)-----点点滴滴的积累
  • SpringBoot项目使用切面编程实现数据权限管理
  • 亚马逊测评是做什么的,风险有哪些?
  • 安科瑞导轨式智能通讯管理机
  • vs2010下 转换到 COFF 期间失败: 文件无效或损坏
  • 托福高频真词List19 // 附托福TPO阅读真题
  • Go语言项目标准结构应该如何组织的?
  • 设计模式简介
  • #详细介绍!!! 线程池的拒绝策略(经典面试题)
  • 正则表达式作业
  • 《扬帆优配》交易拥挤度达历史极值 当前A股TMT板块性价比几何?
  • C/C++开发,无可避免的IO输入/输出(篇三).字符串流(内存流)IO处理
  • 什么是HTTP请求?【JavaWeb技术】
  • 浅聊面试这件事
  • 【致敬未来的攻城狮计划】连续打卡第7天+瑞萨RA2E1点亮LED