weixin_43771920 2025-04-11 09:58 采纳率: 0%
浏览 9

求大家解惑,PY打包后加载数据集时总是出错

求大家解惑,PY打包后加载数据集时总是出错
我的打包命令是:
pyinstaller --noconsole --add-data "*.xlsx;." --paths=C:\Python39\Lib\site-packages --collect-all=scipy --collect-all=PyQt5 --hidden-import=openpyxl --hidden-import=openpyxl.styles --hidden-import=pandas.io.formats.excel "迭代版本.py"
最终在生成的EXE上加载文件时会显示:File is not a zip file。我在代码中指定了引擎,为什么还会显示这个问题呢?源代码运行时没有问题,就是在打包后才有这个问题。

img

img

  • 写回答

4条回答 默认 最新

  • 阿里嘎多学长 2025-04-11 10:01
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    解惑:PY打包后加载数据集时总是出错

    你使用 PyInstaller 打包 Python 程序时,加载数据集总是出错,这可能是因为 PyInstaller 在打包过程中无法正确地处理数据集文件。

    在你的打包命令中,你使用了 --add-data 选项来添加数据集文件,但是你可能需要使用 --add-binary 选项来添加数据集文件的路径。

    尝试修改打包命令为:

    pyinstaller --noconsole --add-binary "C:\Path\To\Your\Dataset.xlsx;." --paths=C:\Python39\Lib\s
    

    其中,C:\Path\To\Your\Dataset.xlsx 是你的数据集文件的路径。

    如果你使用的是 Excel 文件,可以尝试使用 --add-binary 选项来添加 Excel 文件的路径,例如:

    pyinstaller --noconsole --add-binary "C:\Path\To\Your\Dataset.xlsx;." --paths=C:\Python39\Lib\s
    

    如果你使用的是其他类型的数据集文件,例如 CSV 文件,可以尝试使用 --add-binary 选项来添加 CSV 文件的路径,例如:

    pyinstaller --noconsole --add-binary "C:\Path\To\Your\Dataset.csv;." --paths=C:\Python39\Lib\s
    

    如果你仍然遇到问题,可以尝试使用 --debug 选项来启用 PyInstaller 的调试模式,例如:

    pyinstaller --noconsole --add-binary "C:\Path\To\Your\Dataset.xlsx;." --paths=C:\Python39\Lib\s --debug
    

    这将帮助你更好地 debug 打包过程中的问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月11日