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

使用Python创建文件时出现FileNotFoundError错误

问题分析与修复

报错说明

你遇到的错误是:文件未找到错误:[错误号 2] 不存在该文件或目录,原因如下:

  1. 代码未导入datetime模块,dt变量未定义,运行时会先触发名称错误,后续才会因为目录问题触发文件未找到错误
  2. 目标路径中的Data目录不存在,Python的open()函数无法自动创建不存在的目录层级
  3. 错误调用了文件对象的dump()方法,JSON数据写入应该使用json模块的dump()方法
  4. 文件名中包含/字符,Windows系统下文件名不允许使用该字符,会被解析为目录分隔符,导致路径无效

修复后的代码

import json
import datetime as dt
import os

# 替换文件名中的/为_,避免路径解析错误
timestamp = dt.datetime.now().strftime("%a-%m_%d_%y-%I%p")
file_name = rf'.\Data\Archive-{timestamp}.json'

# 自动创建Data目录(如果不存在)
os.makedirs(os.path.dirname(file_name), exist_ok=True)

# 使用上下文管理器安全操作文件
with open(file_name, 'w', encoding='utf-8') as file:
    json.dump({}, file, indent=4)  # indent参数让JSON格式更美观,可选

关键修复点

  • 新增import datetime as dt,解决dt未定义的问题
  • 使用os.makedirs()创建目标目录,exist_ok=True保证目录已存在时不报错
  • 将文件名中的/替换为_,避免系统将其识别为目录分隔符
  • 使用with语句管理文件,自动关闭文件,避免资源泄漏
  • 调用json.dump()方法写入数据,正确传递数据和文件对象参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 11:15:41