Pyinstaller(python打包為exe檔案)
需求分析:
python指令碼如果在沒有安裝python的機器上不能執行,所以將指令碼打包成exe檔案,降低指令碼對環境的依賴性,同時執行更加迅速。
當然打包的指令碼似乎不是在所有的win平臺下都能使用,win7有一部分不能使用,我在win10能夠很好的執行。
準備:
pyinstaller(http://www.pyinstaller.org/) 首先還是去官網看支援的python版本,不然會很尷尬的
#安裝方法1:
#安裝pyinstaller和pywin32
#使用一下命令將自動安裝兩個包,在cmd用pip命令
#pip install -i https://pypi.douban.com/simple/ pyinstaller(豆瓣源)
安裝方法二:
pip install pyinstaller (會自動下載future,pywin32,pyinstaller)
如何使用Pyinstaller
方法一:
1.cmd到/python/scripts 找到pyinstaller.exe
2.輸入命令
1 pyinstaller.exe -F path:demo.py
方法二:
1.進入pyinstaller的解壓包,輸入命令
2."python pyinstaller.py -F path:demo.py"
從cmd最後一行輸出可查詢到生成的檔案
後記:
1.程式設定自定義圖示:pyinstaller -F -i ico_path py_path
首先需要下載一張正常的ico,不能用直接修改後綴的。
下載圖片: https://www.easyicon.net
圖片改為ico: http://www.ico.la/
輸入命令 pyinstaller -F -i "demo.ico" "main.py"
2.報錯提示:
pyinstaller -F -i "demo.ico" "main.py" 命令格式一定是先圖示路徑,再程式路徑。
路徑最好為英文,沒有中文字元;指令碼名稱裡沒有特殊字元如 .
使用utf8編碼
圖示檔案必須是正常格式,不能直接更改字尾。
tuble index out of range ---》pyinstaller版本尚未支援python的版本
3.視窗程式
使用 pyinstaller -F -w -i ico_path py_path ,這樣指令碼不會彈出命令窗,前提是用了GUI庫.
4.匯入模組問題
pyinstaller -F -w -i --hidden-import queue ico_path py_path加上選項