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

如何使用Python自动创建按年/月/日层级划分的文件夹

实现按年/月/日层级自动创建文件夹的Python方案

核心逻辑

不需要安装第三方依赖,直接用Python内置模块实现:

  • 用datetime模块获取当前的年、月、日信息
  • 用pathlib模块处理跨平台路径,自动创建多级目录

单次运行脚本

运行一次即可生成当前时间对应的年/月/日三级文件夹,已存在的文件夹不会重复创建、不会报错:

from datetime import date
from pathlib import Path

# 可自定义根目录,比如 Path("/home/user/工作记录") 或者 Path("D:/项目文档")
root_dir = Path.cwd()

# 获取当前日期,月份、日期自动补零为两位格式
current_date = date.today()
year = str(current_date.year)
month = f"{current_date.month:02d}"
day = f"{current_date.day:02d}"

# 拼接完整路径:根目录/年/月/日
target_dir = root_dir / year / month / day

# 创建文件夹,parents=True自动创建不存在的上级目录,exist_ok=True已存在则跳过
target_dir.mkdir(parents=True, exist_ok=True)

print(f"文件夹已确认存在:{target_dir}")

全自动化无人值守方案

要实现随时间推移自动生成对应文件夹,不需要手动运行脚本,有两种常用实现方式:

方案1:内置定时循环(适合长期运行的设备)

脚本后台常驻,每天自动执行一次创建逻辑:

from datetime import date
from pathlib import Path
import time

root_dir = Path.cwd()

def create_daily_dir():
    current_date = date.today()
    year = str(current_date.year)
    month = f"{current_date.month:02d}"
    day = f"{current_date.day:02d}"
    target_dir = root_dir / year / month / day
    target_dir.mkdir(parents=True, exist_ok=True)
    print(f"{current_date} 文件夹已处理完成")

if __name__ == "__main__":
    # 首次运行先执行一次
    create_daily_dir()
    while True:
        # 休眠24小时后再次执行
        time.sleep(24 * 60 * 60)
        create_daily_dir()

方案2:结合系统定时任务(推荐,资源占用更低)

不需要脚本常驻后台,用系统自带的定时任务工具触发单次运行脚本即可:

  • Windows系统:将单次运行脚本保存为.py文件,打开「任务计划程序」,创建每天指定时间运行该脚本的任务即可
  • macOS/Linux系统:编辑crontab规则,添加定时任务即可,示例规则(每天凌晨1点运行):
    0 1 * * * /usr/bin/python3 /你的脚本保存路径/create_dir.py
    

可选扩展功能

  • 如果需要在日期文件夹下自动生成固定子文件夹(比如素材、输出、草稿),在target_dir.mkdir之后添加对应创建逻辑即可
  • 可以添加日志记录,把每次创建操作、异常信息写入日志文件,方便后续排查

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 23:18:02