pyinstaller將python程序打包為可執行文件
前言
對於專業的python程序員來說,python打包工具或許用得並不多。但是對於非專業人士來說,你給他寫個python項目,要讓他安裝python、安裝依賴等等,估計人都會抓狂。或者說,如果你不想暴露自己的項目代碼,python打包工具就派上用場瞭,市面上有多種打包工具,這裡就講講最常用的pyinstaller的使用方法吧。
pyinstaller簡介
pyinstaller是一個python打包工具,它將python程序及所需依賴都打包成一個可執行文件。
說詳細點就是:輸入指定的python腳本,pyinstaller首先會分析腳本所依賴的其他腳本,查找後將所有腳本收集起來(包括python解釋器),最後將這些文件放到一個目錄下,或者是打包到一個可執行文件中。打包後我們隻需要執行可執行文件即可,無需再安裝繁雜的python環境。
需要註意的是,pyinstaller不是交叉編譯器。就是說如果你要將python程序打包成一個能在windows運行的文件,那麼你隻能在windows上使用pyinstaller來完成打包過程,而不能在其他系統如linux、macos上打包。
pyinstaller下載
首先,因pyinstaller支持python的版本需>=3.7,所以我們要確保在python3.7或更新的版本上使用。
安裝:
pip install pyinstaller
下載完成後,運行pyinstaller -h
,顯示如下則安裝成功。
pyinstaller使用
準備好程序代碼
這裡以一個簡單的python程序為例,新建一個a.py文件,內容如下:
import fire def print_msg(msg): print("print here:", msg) if __name__ == "__main__": fire.Fire(print_msg)
打包程序
常用到的命令:
標題 | 參數 | 說明 |
---|---|---|
-F | pyinstaller -F a.py | 在dist目錄下生成一個可執行文件 |
-D | pyinstaller -D a.py | 在dist目錄中,除瞭可執行文件,還會生成依賴文件 |
這裡使用第一種方式來生成文件,執行pyinstaller -F a.py
執行後,我們可在當前目錄下看到多瞭幾個文件/目錄,分別是a.spec、build目錄、dist目錄。
- .spec文件:記錄的是打包參數等信息,也可以預先準備好spec文件直接打包。
- build目錄:記錄的是打包所產生的文件,我們可忽略。
- dist目錄:放的是可執行文件及依賴,例子中dist目錄下的a文件就是可執行文件。
$ ls a.py a.spec build/ dist/
$ ls dist a
運行一下試試:./dist/a 你好
$ ./dist/a 你好 print here: 你好
結果如預期,打包就完成瞭。接下來我們將dist目錄給到需要的人就行瞭。
小結
這裡簡單介紹瞭pyinstaller的使用方法,在我們需要打包python程序的時候,pyinstaller是不二之選。特別需要註意的是,pyinstaller不能跨系統使用哦。
到此這篇關於pyinstaller將python程序打包為可執行文件的文章就介紹到這瞭,更多相關 python打包可執行文件內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 將python項目打包成exe與安裝包的全過程
- 使用pyinstaller打包python PyQt5程序
- Python Pyinstaller庫安裝步驟以及使用方法
- Python 啟動時選擇32位 或64位版的操作
- 基於pyinstaller超級加密操作(加殼和轉c)