Python – 用PyInstaller 將你的Python打包成exe檔
寫了各式各樣的Python Code之後,有一天發現每次都要開IDE才可以運行
相信各位一定有遇過同樣事情,乾脆上網找了一個可以直接將你的code打包成exe直接可以運作
所以就找到一個好用的方法,用PyInstaller 將你的Python打包成exe檔
如果利用Python寫了一個小腳本想要傳給使用Windows但沒有裝Python的朋友執行,
這時候就可以利用將檔案包裝成exe檔案,讓沒有Python的朋友也可以執行非常方便
安裝PyInstaller
透過pip安裝pyinstaller
pip install pyinstaller
透過下載安裝
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz
常用參數介紹
pyinstaller -h 來查看參數
- -F 打包成單執行檔,適合小檔
- -D 打包成多個文件,適合框架類程式
- –icon 圖標路徑
- -w 使用視窗,無控制台
- -c 使用控制台,無視窗
- -p 後面緊跟著你要指定的模塊搜索路徑,如果你的模塊安裝的路徑沒有被PyInstaller自動檢索到,自己指定即可
打包Python
如下圖所示,我們編寫一個輸出Hello,Pyinstall的Python程式,並利用input()使程式可以暫時停在輸出畫面
Windows使用者執行pyinstaller -F hello.py
,會在命令框看到目前進度
套件在執行命令之後會有以下動作
- 會先建立一個 hello.spec
- 建立「build」 資料夾
- 建立 log紀錄檔與工作檔案於資料夾 build 中
- 建立 「dist 」資料夾
- 建立執行檔(.exe)在 「dist」 資料夾
進入「dist」資料夾可看見執行檔
執行程式,如圖所示
Pyinstall可能會碰到的問題
要能32位元與64位元皆可運行,就要在Python 32位元的環境下編譯PyInstaller打包exe,才能在32位元與64位元成功
如果有自己寫的module的話,然後又會提示找不到對應的mudule時,就要用-p來設定自己的module路徑