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

Python如何获取当前周所有日期并以指定格式存入列表

Python实现获取当前周所有日期存入列表

直接使用Python内置datetime标准库即可实现需求,无需安装额外第三方依赖,最终输出格式和你预期的YYYY-MM-DD字符串列表完全匹配。

完整可运行代码

from datetime import datetime, timedelta

def get_current_week_dates(week_start_on_monday: bool = True) -> list:
    # 获取当前本地日期
    today = datetime.today().date()
    # 定位本周起始日期
    if week_start_on_monday:
        # weekday()返回值规则:0=周一,6=周日
        week_start = today - timedelta(days=today.weekday())
    else:
        # 切换为周日作为周起始的计算逻辑:isoweekday()返回值规则:1=周一,7=周日
        week_start = today - timedelta(days=(today.isoweekday() % 7))
    # 逐天生成7个日期,格式化为指定字符串后存入列表
    week_list = [
        (week_start + timedelta(days=i)).strftime('%Y-%m-%d')
        for i in range(7)
    ]
    return week_list

# 调用示例
week = get_current_week_dates()

运行效果

假设当前日期为2022-06-09(周四,周起始为周一),week变量的输出结果为:

['2022-06-06', '2022-06-07', '2022-06-08', '2022-06-09', '2022-06-10', '2022-06-11', '2022-06-12']

自定义调整说明

  • 周起始切换:默认周一为一周第一天,调用时传入week_start_on_monday=False即可改为周日作为周起始
  • 日期格式修改:如果需要其他输出格式,调整strftime()内的格式化参数即可,例如要输出月/日/年格式,将参数改为'%m/%d/%Y'
  • 时区适配:如果需要获取指定时区的周日期,将datetime.today()替换为对应时区的datetime对象即可,Python3.9+可直接用内置zoneinfo模块做时区转换

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.01 19:18:40