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

Python try-except块未触发FileNotFoundError异常问题排查

问题原因

你的代码存在核心逻辑错误:try块内只有pdfPath = "digitalPOTemplate.pdf"这一行字符串赋值代码,这行逻辑只是把文件路径的文本值存入变量,完全不会发起任何本地文件系统访问请求,根本不可能触发FileNotFoundError。
FileNotFoundError只会在代码实际尝试对目标路径执行打开、读取等文件操作时抛出,你当前的except分支没有包裹任何会触发该异常的代码,自然永远不会被执行。你看到的异常抛出,实际是后续写在try块外面的文件读取代码触发的,不在捕获范围内。

修复代码

把所有涉及目标文件访问的逻辑都放到try块内部即可,参考示例:

try:
    pdfPath = "digitalPOTemplate.pdf"
    # 执行实际的文件访问操作,文件不存在时会在此处抛出异常
    with open(pdfPath, "rb") as f:
        # 此处写你后续读取、解析PDF的业务逻辑
        content = f.read()
except FileNotFoundError:
    print("no template")
补充说明
  • 如果你使用PyPDF2、pdfplumber、fitz等第三方PDF处理库加载文件,需要把对应调用库加载文件的方法也放在try块内,只存路径字符串永远不会触发文件类异常。
  • 运行代码前建议确认程序的当前工作目录和你存放PDF的根目录一致,避免因为工作目录不匹配导致的路径查找失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 05:39:33