1. 程式人生 > >用Pyinstaller生成可執行文件

用Pyinstaller生成可執行文件

目錄 步驟 當前 根目錄 命令 TP .py install 會有

(1)只有單程序時

當只需要將一個單獨的程序(不需要用到其他模塊或文件)打包成可執行文件exe時,例如一個簡單的輸出hello world的程序 helloworld.py。

技術分享圖片

在當前文件目錄下打開cmd窗口(按住Shift + 右鍵,選擇 在此處打開命令窗口),然後在cmd窗口中輸入pyinstaller helloworld.py,然後按下回車。

技術分享圖片

命令執行後會在當前文件夾裏生成一個叫 dist 的文件夾和一個叫 build 的文件夾,還有一個叫 helloworld.spec 的 spec 文件,在 dist 文件夾中會產生一個叫 helloworld 的文件夾,helloworld 文件夾中有一個叫做 helloworld.exe 的程序即為我們需要的exe文件。

點擊 執行 helloworld.exe,出現以下結果

技術分享圖片

(2)需要用到其他文件如圖片時,這裏有兩種方法。

第一種方法:比如這裏有一個需要用到圖片 "3.png" 的可視化窗口程序001.py

技術分享圖片

先按照(1)步驟打開cmd窗口輸入 pyinstaller 001.py -w

在 dist文件夾中裏生成一個001文件夾。-w的意思是去掉命令行窗口(由於001.py是一個可視化窗口程序,我們這裏為了美觀可以去掉命令行窗口),此時001文件夾裏的001.exe是無法執行的。因為程序文件目錄下缺少圖片“3.jpg”,這裏我們只需要將此圖片“3.jpg”復制到001文件夾中,程序便可執行。

技術分享圖片

點擊執行 001.exe,結果如下

技術分享圖片

第二種:同樣先按照(1)步驟打開cmd窗口輸入 pyinstaller 001.py ,在 dist文件夾中裏生成一個001文件夾。前面已經說過,會在當前目錄下產生一個001.spec的spec文件,打開spec文件編輯

技術分享圖片

找到datas參數,此時datas參數為空,我們只需要將datas=[] 修改成datas = [(‘3.png‘,‘‘)],

技術分享圖片

然後用在當前文件夾打開cmd窗口輸入 pyinstaller 001.spec,執行此命令然後在001文件夾中就會有3.png文件

技術分享圖片

這個參數為一個列表 [(x,y)] ,x表示我們需要的文件路徑,這裏由於spec文件與圖片3.png出於同一文件夾之下,可直接寫成 ‘3.png‘ ,也可以寫成絕對圖片的絕對路徑,如 ‘E:\\Python文件\/helloworld\/新建文件夾\\3.png‘,

y表示將需要的文件保存到什麽文件中,這裏y參數沒有寫表示直接保存在根目錄001中,可以寫成 ‘.\\img‘ ,就表示在001文件夾中創建一個img文件夾保存圖片文件3.png

用Pyinstaller生成可執行文件