| 
 利用Python寫了一個小腳本想要傳給使用Windows但沒有裝Python的朋友執行,這時候就可以利用將檔案包裝成exe檔案,讓沒有Python的朋友也可以執行。本篇將介紹利用套件「PyInstaller」製作exe檔。 筆者環境目前為:Windows 10 (64位元)與Power Shell與Python3, PyCharm。  
安裝方法- #透過pip安裝pyinstaller
 
 - pip install pyinstaller#如果失敗可以使用以下的方法進行安裝
 
 - pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz
 
  複製代碼 
 
- pyinstaller -h 來查看參數
 - -F 打包成一個exe文件
 - –icon=圖標路徑
 - -w 使用視窗,無控制台
 - -c 使用控制台,無視窗
 - -D 創建一個目錄,包含exe以及其他一些依賴性文件
 
 
 
  
 
舉個例子如下圖所示,我們編寫一個輸出Hello,Pyladies!的Python程式,並利用input()使程式可以暫時停在輸出畫面。 Windows使用者執行 - pyinstaller -F .\darknet.py 
 
  複製代碼 
,會在命令框看到目前進度。
 mac 使用者則是執行  - pyinstaller -F ./darknet.py
 
  複製代碼 
 , 因為command line 是正斜線。 
PyInstaller   Python 打包  exe 
 
 
 
可以透過進度發現這個套件在執行命令之後:- 會先建立一個 hello.spec
 - 建立「build」 資料夾
 - 建立 log紀錄檔與工作檔案於資料夾 build 中
 - 建立 「dist 」資料夾
 - 建立執行檔(.exe)在 「dist」 資料夾
 
 
 
 進入「dist」資料夾可看見執行檔。 可執行程式,如圖所示。  
 何謂__pycache__ ?放編譯時需要的檔案用的檔案。 當你在python中運行程序時,解釋器首先將其編譯為字節碼(這是一個過度簡化),並將其存儲在__pycache__文件夾中。 
 編譯不出現的方法:利用python -B foo.py使__ pycache__資料夾不出現。  
 
注意事項執行檔案可在win8/win10,64位元的電腦運行,但win7 x64和其餘所有32位失敗,會提示不兼容,若要能32位元與64位元皆可運行,就要在Python 32位元的環境下編譯PyInstaller打包exe,才能在32位元與64位元成功。  
 封裝成Linux sh 文件在Linux環境下,打包成Linux可執行程式(需要事先安裝好相關的依賴套件) 
 - pyinstaller -F darknet.py
 
  複製代碼 
在目錄下的dist目錄下產生darknet  
 
參考文章 
https://medium.com/pyladies-taiw ... %AA%94-32a4bacbe351 
https://blog.csdn.net/qq_29277155/article/details/107554762 
 |