pyinstaller打包python文件后,运行出现"Failed to execute script xxx.exe"错误的解决方式(No module named 'xxx')

一、问题定位:

        windows+r进入cmd命令行窗口

        cd exe文件所在路径;如cd C:\Users\user\Desktop\test\dist

        执行命令行:xxx.exe 参数1 参数2(无参数可忽略)

        pyinstaller打包python文件后,运行出现

我这里报的错是说字符串类型不能使用乘法,在python里没有转类型也是可以用的,但这里需要用int()转一下

当然我这里只是让你定位问题,很可能你的问题跟我的不一样,我这里只写一个比较常见的错误类型

ImportError:No module named 'xxx'

这个问题出现的原因是,有些模块是隐藏导入的,但是pyinstaller打包时并未指定,所以执行时找不到此模块

二、问题解决:打包文件时,会生成一个spec文件;假如你主python文件叫做main.py,那么修改main.spec文件

我遇到的是No module named scipy._lib.messagestream

然后需要做的就是:

1、设置此模块隐藏导入

pyinstaller打包python文件后,运行出现

2、以此spec文件打包python(修改后记得保存)

pyinstaller打包python文件后,运行出现

打包后再执行exe文件,运行成功

谢谢观看!

你可能感兴趣的:(python,pyinstaller)