在 Python 中将星期添加到日期

使用 datetime 模块中的 timedelta() 类将星期添加到日期,例如 result_1 = date_1 + timedelta(weeks=2)。 timedelta 类可以传递一个 week 参数并将指定的周数添加到日期。

from datetime import datetime, date, timedelta

# ✅ 将星期添加到日期
my_str = '09-14-2023'  # ?️ (mm-dd-yyyy)
date_1 = datetime.strptime(my_str, '%m-%d-%Y')

print(date_1)  # ?️ 2023-09-14 00:00:00

result_1 = date_1 + timedelta(weeks=2)
print(result_1)  # ?️ 2023-09-28 00:00:00

# -----------------------------------------------

# ✅ 将周添加到当前日期

current_date = datetime.today()
print(current_date)  # ?️ 2022-06-20 14:11:16.561585

result_2 = current_date + timedelta(weeks=1)
print(result_2)  # ?️ 2022-06-27 14:11:16.561585

# -----------------------------------------------

# ✅ 使用 date 而不是 datetime

date_3 = date(2023, 9, 7)
print(date_3)  # ?️ 2023-09-07

result_3 = date_3 + timedelta(weeks=3)
print(result_3)  # ?️ 2023-09-28

# -----------------------------------------------

# ✅ 将周添加到当前日期(使用 date 而不是 datetime)

date_4 = date.today()
print(date_4)  # ?️ 2022-06-20

result_4 = date_4 + timedelta(weeks=2)
print(result_4)  # ?️ 2022-07-04

确保从 datetime 模块导入 datetime 或 date 和 timedelta 类。

在示例中,我们将 week 关键字参数传递给 timedelta 类,但我们也可以传递天数,例如 timedelta(days=14)。 无论哪种方式,如有必要,月份(和年份)都将翻转。

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

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

from datetime import datetime, date, timedelta

# ✅ 将星期添加到日期
my_str = '09-14-2023'  # ?️ (mm-dd-yyyy)
date_1 = datetime.strptime(my_str, '%m-%d-%Y')

print(date_1)  # ?️ 2023-09-14 00:00:00

result_1 = date_1 + timedelta(weeks=2)
print(result_1)  # ?️ 2023-09-28 00:00:00

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

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

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

from datetime import datetime, timedelta


current_date = datetime.today()
print(current_date)  # ?️ 2022-06-20 14:11:16.561585

result_2 = current_date + timedelta(weeks=1)
print(result_2)  # ?️ 2022-06-27 14:11:16.561585

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

第三个示例在将星期添加到日期时使用 date() 类而不是 datetime 类

from datetime import date, timedelta


date_3 = date(2023, 9, 7)
print(date_3)  # ?️ 2023-09-07

result_3 = date_3 + timedelta(weeks=3)
print(result_3)  # ?️ 2023-09-28

datetime.timedelta 类可以传递我们想要添加到 date 或 datetime 对象的周数。

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

from datetime import date, timedelta


date_4 = date.today()
print(date_4)  # ?️ 2022-06-20

result_4 = date_4 + timedelta(weeks=2)
print(result_4)  # ?️ 2022-07-04

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