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

Python批量转换TXT到DOCX时出现ModuleNotFoundError报错

解决docx模块导入报错:ModuleNotFoundError: No module named 'exceptions'

这个问题的核心是你用的docx包是过时的Python2版本,或者脚本文件名和库名冲突了,具体解决步骤如下:

  • 检查脚本文件名:如果你的转换脚本叫docx.py,马上重命名(比如改成txt2docx.py)。Python会优先导入当前目录下的同名文件,导致你实际导入的是自己的脚本,而不是真正的docx库。

  • 替换为正确的docx库:

    1. 先卸载旧的、不兼容Python3的docx包:
      pip uninstall docx
      
    2. 安装官方维护的、支持Python3的python-docx库:
      pip install python-docx
      
  • 使用正确的批量转换代码:
    下面是可以直接运行的批量TXT转DOCX代码,确保导入的是正确的库:

    import os
    from docx import Document
    
    # 配置路径
    txt_folder = "./txts"  # 你的TXT文件存放目录
    output_folder = "./docx_output"
    
    # 创建输出目录(不存在则自动创建)
    os.makedirs(output_folder, exist_ok=True)
    
    # 遍历所有TXT文件
    for file in os.listdir(txt_folder):
        if file.lower().endswith(".txt"):
            txt_path = os.path.join(txt_folder, file)
            docx_name = os.path.splitext(file)[0] + ".docx"
            docx_path = os.path.join(output_folder, docx_name)
    
            # 生成DOCX文档
            doc = Document()
            # 读取TXT内容(注意编码,根据你的文件调整,比如gbk)
            with open(txt_path, "r", encoding="utf-8") as f:
                doc.add_paragraph(f.read())
            doc.save(docx_path)
            print(f"转换完成:{file} → {docx_name}")
    

报错原因说明

Python3已经移除了exceptions模块,原来Python2里的异常类(比如PendingDeprecationWarning)现在直接在builtins模块下。你之前安装的docx包是针对Python2开发的旧版本,所以会出现这个导入错误。而python-docx是专门为Python3维护的库,不会有这个问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 19:15:28