pyinstaller打包多個py文件仍報錯ModuleNotFoundError: No module named 'xxx'


[問題現象]

使用pyinstaller A.py -p b.py -p c.py打包多個文件

或者使用main.spec在Analysis配置好各個文件打包

 

 

打包成功后,運行main.exe仍然報錯ModuleNotFoundError: No module named 'xxx'

[問題原因]

 在網上查了好久好久,卡了兩天。。。。。眾說紛紜,還有說pyinstaller不能識別“from xxx import xxx”的語句的。。。各種被誤導。。。。

后來在https://blog.csdn.net/djshichaoren/article/details/79801531

看到

 

經過檢查,發現自己的目錄下除了main.py,還有其他的一些py文件

於是猜想是pyinstaller在打包的時候,如果main.py的目錄下還有一些平級的py的話,pyinstaller就分不清楚誰是主文件入口,誰是導入文件。所以就會出現找不到模塊的錯誤ModuleNotFoundError: No module named 'xxx'

[解決方法]

修改一下目錄結構,變成了

把其他py文件都放到目錄下,保證項目下只有一個main.py

這樣只需要輸入pyinstaller main.py 就能打包多個文件,甚至是省去了-p的手動指定操作

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM