溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

詳解如何將python3.6軟件的py文件打包成exe程序

發(fā)布時間:2020-10-25 06:15:53 來源:腳本之家 閱讀:125 作者:云水禪心_心一 欄目:開發(fā)技術(shù)

在我們完成一個Python項目或一個程序時,希望將Python的py文件打包成在Windows系統(tǒng)下直接可以運行的exe程序。在瀏覽網(wǎng)上的資料來看,有利用pyinstaller和cx_Freeze進行打包的方法。關(guān)于cx_Freeze打包的方法,可以參考windows下cx_Freeze生成Python可執(zhí)行程序中的方法。由于方法主要是可以用于Python3.3版本的,高于該版本的Python無法使用。在我嘗試的過程中,碰到的一個問題是:

安裝cx_Freeze-4.3.3,找不到cxFreeze.bat

解決的方法是,在cmd命令行操作下,切換至放置cx_Freeze-4.3.3文件的Python安裝目錄下scripts目錄下,使用以下代碼自動生成:

python cxfreeze-postinstall

由于我安裝的Python版本是3.6.2版本的,版本相對較新,cx_Freeze還沒有更新版本至3.6版本。在我嘗試很多次數(shù)失敗后,決定采用pyinstaller來進行文件打包的方法。

下載pyinstaller

采用命令行操作的辦法

在cmd命令行中,輸入代碼:

pip install pyinstaller

或者采用更新、升級的方法:

pip install --upgrade pyinstaller

采用下載文件+cmd操作的辦法

首先,前往PyInstaller網(wǎng)站下載:http://www.pyinstaller.org/downloads.html

詳解如何將python3.6軟件的py文件打包成exe程序
     

下載時,要注意你安裝的Python是多少版本的,有穩(wěn)定版和不穩(wěn)定版的,Python3.6只有不穩(wěn)定版本的。其中綠色方框的是適用于linux操作系統(tǒng)下的,紅色方框是適用于Windows系統(tǒng)下的。

進行解壓縮、放置和安裝

下載后,將壓縮文件解壓縮在Python安裝目錄下,進入該文件:

詳解如何將python3.6軟件的py文件打包成exe程序

該目錄中含有setup.py,同時在cmd中進入該目錄:

詳解如何將python3.6軟件的py文件打包成exe程序

輸入命令:

python setup.py install

并按下回車鍵,會看到代碼迅速執(zhí)行,會進行安裝pyinstaller,顯示如下狀態(tài),看到“Finished processing dependencies for PyInstaller==3.3.dev0+41c426f6d”,即安裝成功:

詳解如何將python3.6軟件的py文件打包成exe程序

使用pyinstaller打包py文件成exe程序

打包文件成exe程序

將cmd的目錄切換至(命令:cd 文件路徑(注意空格))需要打包的py文件目錄下:

詳解如何將python3.6軟件的py文件打包成exe程序

并輸入代碼,格式為使用命令:pyinstaller -F 文件名(帶后綴py):

pyinstaller -F test.py

常用參數(shù)說明:

–icon=圖標路徑
-F 打包成一個exe文件
-w 使用窗口,無控制臺
-c 使用控制臺,無窗口
-D 創(chuàng)建一個目錄,里面包含exe以及其他一些依賴性文件

pyinstaller -h 來查看參數(shù)

回車后,代碼迅速操作,直到操作結(jié)束。

詳解如何將python3.6軟件的py文件打包成exe程序

返回目標文件目錄,發(fā)現(xiàn)該目錄下生成了.spec文件test.spec:

詳解如何將python3.6軟件的py文件打包成exe程序
打包好的exe文件,在同目錄的dist文件中:

詳解如何將python3.6軟件的py文件打包成exe程序

由此,py文件打包好為exe文件。pyinstaller 改變生成exe程序的圖標

pyinstaller -F --icon=my.ico test.py

my.ico 是一個圖標名,和當前的test.py文件在同一個目錄下

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI