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

PyInstaller打包exe报错:No module named 'yaml',已装pyyaml仍无解

解决PyInstaller打包exe时PyYAML模块丢失的问题

以下是几个经过验证的解决方法,按优先级尝试:

  • 方法1:通过.spec文件精准配置依赖

    1. 先生成对应的.spec配置文件:
      pyinstaller main.py
      
    2. 打开生成的main.spec,找到hiddenimports参数,添加'yaml'和'pyyaml'两个条目:
      hiddenimports=['yaml', 'pyyaml'],
      
    3. 基于修改后的.spec文件重新打包:
      pyinstaller main.spec
      
  • 方法2:打包命令中强制指定双重隐藏导入与路径
    之前的参数可能不够完整,试试同时指定yaml和pyyaml作为隐藏导入,并确保路径用引号包裹:

    pyinstaller --hidden-import pyyaml --hidden-import yaml -p "c:\users\abc\python37\lib\site-packages" main.py
    
  • 方法3:确认打包环境一致性
    如果使用了虚拟环境,必须激活对应环境后再执行打包命令,否则PyInstaller会读取全局Python环境的依赖,可能漏掉虚拟环境里的PyYAML。

  • 方法4:修改代码中的导入语句
    找到报错的dataloaders.py文件,把import yaml替换为import pyyaml as yaml,让PyInstaller更清晰地识别到依赖模块。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 14:02:07