You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python的datetime函数获取2022年第10周的起始日期?

获取2022年第10周的起始日期(Python实现)

可以通过Python的datetime模块轻松实现,以下是两种常用方法:

方法一:使用fromisocalendar(Python 3.8+)

该方法直接支持ISO标准周的日期计算,ISO周以周一为一周起始日,正好匹配需求的结果:

import datetime

n = 10
target_year = 2022
# 获取第n周的第一天(周一)
week_start = datetime.date.fromisocalendar(target_year, n, 1)
# 按指定格式输出
print(week_start.strftime("%-m/%-d/%Y"))  # 输出:3/7/2022

方法二:使用strptime兼容旧版本Python

如果你的Python版本低于3.8,可以用字符串解析的方式,利用ISO周的格式符实现:

import datetime

n = 10
target_year = 2022
# 构造ISO周格式的字符串,%u表示周内第几天(1=周一)
date_str = f"{target_year}-W{n}-1"
week_start = datetime.datetime.strptime(date_str, "%G-W%V-%u").date()
print(week_start.strftime("%-m/%-d/%Y"))  # 输出:3/7/2022

注意事项

  • 不同地区对“一周起始日”的定义不同:%U以周日为起始,%W以周一为起始,而ISO周(%V)严格遵循周一为起始,且第一周需包含当年至少4天,这里用ISO周的逻辑能准确得到目标日期。

内容的提问来源于stack exchange,提问作者Jay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 08:45:31