python利用PyQt5和QTDesginer開發GUI應用(三)、使用pyinstaller打包成exe文件

python應用GUI開發系列:

python利用PyQt5和QTDesginer開發GUI應用(一)、環境準備及demo

python利用PyQt5和QTDesginer開發GUI應用(二)、股票查詢工具

-------------------------------------------------------------------------------------------------------------------
使用pyinstaller這個工具即可。

安裝:pip install pyinstaller

在terminal中輸入

pyinstaller -F [-c] [-w] fund_search_show_ui.py

即可打包成exe文件。   -c是返回錯誤信息 -F打包文件   -w 在執行exe時隱藏cmd窗口

執行打包命令的時候會生成.spec文件,然後pyinstaller會根據spec文件進行打包。

打包的時候有可能會遇到一個錯誤:

RecursionError  maximum recursion depth exceeded,UnicodeDecodeError

這是超過了最大遞歸深度,python默認的遞歸深度默認是1000。

解決:

修改.spec文件,在最前面加上:

import sys
sys.setrecursionlimit(100000)

必須在.spec文件上加,在.py文件里加是沒有用的。

然後編譯的時候改成從.spec文件編譯:

pyinstaller -F [-c] [-w] fund_search_show_ui.spec

編譯成功後,exe文件會生成在當前目錄下的dist目錄下:

但此時生成的文件較大,有364M

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章