1. 程式人生 > 其它 >Python編碼執行檔案exe反編譯基礎

Python編碼執行檔案exe反編譯基礎

Python指令碼非常強大,實現功能也比較方便快捷,但它需要在特定的Python環境下執行,受版本、依賴庫的影響很大,為了方便共享,可以使用如Pyinstaller將python程式碼、依賴庫和編譯環境等一鍵打包成可執行程式exe。基本流程如下:

編譯測試指令碼

為了方便演示,這裡編寫兩個指令碼main.py和mylib.py,前者呼叫後者的函式,輸出兩句話。

執行結果如下,可以看在同時也生成了名為"__pycache__"的快取資料夾,裡面放的py檔案的二進位制編譯結果mylib.cpython-37.pyc和mylib.cpython-37.pyc

打包應用程式

這裡使用pyinstaller來打包,安裝命令:

pip install pyinstaller

打包命令

Pyinstaller -F 原始碼檔案.py

打包日誌如下:

打包成功在dist檔案中為exe可執行檔案,執行效果如下:

常見問題解決

問題1:pyinstaller不是內部或者外部命令

已經安裝了pyinstaller,但執行打包命令時,仍然提示 pyinstaller不是內部或者外部命令

解決:先使用pip show pyinstaller檢查是否正確安裝;如果已安裝將pyinstaller.exe檔案拷到Python的Scripts目錄下。

問題2:打包工具是否有圖形化工具

解決:有的。安裝auto-py-to-exe

問題3:安裝下載元件慢。

解決:使用國內映象下載。如:

清華:https://pypi.tuna.tsinghua.edu.cn/simple

阿里雲:http://mirrors.aliyun.com/pypi/simple/

中國科技大學 https://pypi.mirrors.ustc.edu.cn/simple/

華中理工大學:http://pypi.hustunique.com/

山東理工大學:http://pypi.sdutlinux.org/

豆瓣:http://pypi.douban.com/simple/

作者:我也是個傻瓜
出處:http://www.cnblogs.com/liweis/


簽名:成熟是一種明亮而不刺眼的光輝。