1. 程式人生 > >pyinstaller打包python檔案後,執行出現"Failed to execute script xxx.exe"錯誤的解決方式(No module named 'xxx')

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(無引數可忽略)

        

我這裡報的錯是說字串型別不能使用乘法,在python裡沒有轉型別也是可以用的,但這裡需要用int()轉一下

當然我這裡只是讓你定位問題,很可能你的問題跟我的不一樣,我這裡只寫一個比較常見的錯誤型別

ImportError:No module named 'xxx'

這個問題出現的原因是,有些模組是隱藏匯入的,但是pyinstaller打包時並未指定,所以執行時找不到此模組

二、問題解決:打包檔案時,會生成一個spec檔案;假如你主python檔案叫做main.py,那麼修改main.spec檔案

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

然後需要做的就是:

1、設定此模組隱藏匯入

2、以此spec檔案打包python(修改後記得儲存)

打包後再執行exe檔案,執行成功

謝謝觀看!