將python代碼打包成.exe文件直接運(yùn)行的具體步驟
pyinstaller
PyInstaller是一種用于Python腳本的自包含的可執(zhí)行文件打包工具,它可以將Python代碼打包成一個(gè)可執(zhí)行文件,使得該文件可以在沒有安裝Python解釋器的情況下在其他計(jì)算機(jī)上運(yùn)行。PyInstaller支持多種操作系統(tǒng)和Python版本,可以幫助Python開發(fā)者更加方便地分發(fā)和部署他們的應(yīng)用程序。
PyInstaller的工作原理是將Python腳本解析成可執(zhí)行文件。它將Python腳本和所有的依賴庫、資源文件打包成一個(gè)可執(zhí)行文件,并且會自動(dòng)解析依賴關(guān)系,使程序在其他計(jì)算機(jī)上可以獨(dú)立運(yùn)行。打包后的可執(zhí)行文件包含一個(gè)解釋器和所有的依賴庫、資源文件,不需要安裝任何其他程序。
PyInstaller的使用非常簡單,只需要安裝PyInstaller,然后使用命令行工具打包即可。打包命令非常簡單,只需要指定Python腳本的路徑,PyInstaller會自動(dòng)解析依賴關(guān)系,并生成一個(gè)可執(zhí)行文件。PyInstaller支持多種參數(shù),可以對打包后的可執(zhí)行文件進(jìn)行一些定制化的設(shè)置。例如,可以設(shè)置圖標(biāo)、版本號等信息,也可以排除某些依賴庫或文件。
PyInstaller不僅可以將Python腳本打包成可執(zhí)行文件,還可以將Python程序打包成DLL和SO文件,使得Python程序可以被其他編程語言以動(dòng)態(tài)鏈接庫的方式調(diào)用。這也使得Python成為了一種非常靈活和強(qiáng)大的編程語言,可以和其他編程語言混合使用。
雖然PyInstaller對Python的打包和部署提供了很大的便利,但是在打包過程中也需要注意一些問題。例如,打包后的可執(zhí)行文件會比原腳本文件大很多,可能會占用更多的磁盤空間。此外,由于打包后的文件需要包含所有依賴庫和資源文件,因此打包時(shí)間可能會比較長。在使用PyInstaller時(shí),需要仔細(xì)閱讀文檔,并且多做測試,以確保生成的可執(zhí)行文件可以在目標(biāo)計(jì)算機(jī)上正常運(yùn)行。
總之,PyInstaller是一個(gè)非常好用的Python打包工具,它可以將Python腳本和依賴庫、資源文件打包成一個(gè)可執(zhí)行文件,使得該文件可以在其他計(jì)算機(jī)上獨(dú)立運(yùn)行。PyInstaller支持多種操作系統(tǒng)和Python版本,使用簡單方便。雖然在使用時(shí)需要注意一些問題,但是PyInstaller的便利性使得它成為了Python開發(fā)中不可或缺的一部分。
.exe文件
.exe文件是Windows操作系統(tǒng)中的一種可執(zhí)行文件格式,它是由Windows編譯器編譯出來的二進(jìn)制文件,用于執(zhí)行程序代碼。.exe文件通常包含了程序的所有必要資源和庫文件,因此可以獨(dú)立地在計(jì)算機(jī)上運(yùn)行,不需要依賴其他軟件或環(huán)境。它是一種非常流行的文件格式,因?yàn)樗梢苑奖愕貙⒊绦蚍职l(fā)給用戶,用戶只需要雙擊該文件即可啟動(dòng)程序。
.exe文件通常是由開發(fā)人員使用編譯器將源代碼編譯成機(jī)器語言生成的。編譯器將源代碼翻譯成適用于目標(biāo)計(jì)算機(jī)的指令集,生成可執(zhí)行文件。.exe文件包含了程序的所有代碼、資源和數(shù)據(jù),它是一種可靠的二進(jìn)制文件,可以在Windows操作系統(tǒng)上運(yùn)行。
.exe文件可以儲存在計(jì)算機(jī)上的任何位置,并且可以通過雙擊文件啟動(dòng)程序。它也可以通過命令行來啟動(dòng)。.exe文件可以啟動(dòng)GUI界面,也可以只是在控制臺上輸出某些信息。.exe文件還可以接受命令行參數(shù),這些參數(shù)可以被程序用來影響其運(yùn)行。
.exe文件的安全性問題也備受關(guān)注。惡意軟件開發(fā)者會將病毒、木馬等惡意代碼嵌入.exe文件中,以達(dá)到控制用戶計(jì)算機(jī)的目的。因此,在使用.exe文件時(shí),要注意文件來源的可信度,并且使用殺毒軟件檢查文件是否存在病毒,以保證計(jì)算機(jī)的安全性。
總之,.exe文件是Windows操作系統(tǒng)中的一種可執(zhí)行文件格式,用于執(zhí)行程序代碼。它包含了程序的所有必要資源和庫文件,可以獨(dú)立地在計(jì)算機(jī)上運(yùn)行。.exe文件可以通過雙擊文件啟動(dòng)程序,也可以通過命令行來啟動(dòng)。在使用.exe文件時(shí),要注意文件來源的可信度,并且使用殺毒軟件檢查文件是否存在病毒,以保證計(jì)算機(jī)的安全性。
具體步驟
第一步:安裝pyinstaller
首先同時(shí)按住鍵盤上的"win+r"鍵,輸入"cmd"進(jìn)入終端

在終端輸入
pip install pyinstaller
下載安裝pyinstaller工具
安裝成功后在終端輸入"pyinstaller"檢查是否安裝成功

如上圖即安裝成功
第二步:進(jìn)入要打包文件的目錄
在這里我就以滿屏表白代碼為例子給大家演示一下
將代碼輸入pycharm(conda等python環(huán)境都可以)

查看該文件的路徑

在終端進(jìn)入該路徑

輸入如下命令,等待打包即可
pyinstaller -F main.py
注意這里的main.py文件是你要打包的文件名,對我來說是如下這個(gè)文件

出現(xiàn)如下的信息說明打包成功

第三步:執(zhí)行文件
最后我們進(jìn)入剛才的文件夾,我們會發(fā)現(xiàn)剛才的目錄下多出了三個(gè)文件(文件夾)

我們進(jìn)入"dist"文件夾,里面有一個(gè)"main"文件夾

雙擊進(jìn)入"main"文件夾

里面有一個(gè)main.exe可執(zhí)行文件,雙擊運(yùn)行即可!
第四步:發(fā)給好友
只需要將剛才的三個(gè)文件放入同一個(gè)文件夾下,然后壓縮文件夾發(fā)給好友即可哦



拓展
對于
pyinstaller -F main.py
除了-F參數(shù),pyinstaller還有許多其他參數(shù)可供選擇,以下是一些常用的參數(shù):
-w:關(guān)閉控制臺窗口,使程序在后臺運(yùn)行。-c:為程序創(chuàng)建一個(gè)控制臺窗口。-D:創(chuàng)建一個(gè)包含多個(gè)文件的目錄結(jié)構(gòu)作為輸出。-i:指定程序的圖標(biāo)文件。-n:指定程序的名稱。-p:添加額外的模塊搜索路徑。--hidden-import:強(qiáng)制添加一個(gè)隱藏的導(dǎo)入(在運(yùn)行時(shí)需要但無法自動(dòng)檢測到的模塊)。--exclude-module:排除特定模塊。
例如,運(yùn)行pyinstaller -w -i icon.ico main.py將使用icon.ico作為程序圖標(biāo),并在后臺運(yùn)行程序。
尾聲
以上就是python代碼打包成.exe文件直接運(yùn)行的具體步驟的詳細(xì)內(nèi)容,更多關(guān)于python代碼打包成.exe文件的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python使用Matplotlib和Seaborn進(jìn)行數(shù)據(jù)可視化分析
Python作為數(shù)據(jù)科學(xué)領(lǐng)域的明星語言,擁有強(qiáng)大且豐富的可視化庫,其中最著名的莫過于 Matplotlib 和 Seaborn,下面我們來看看如何使用Matplotlib和Seaborn繪制常用圖表并掌握一些基本的圖表定制技巧吧2025-12-12
python自動(dòng)化測試三部曲之request+django實(shí)現(xiàn)接口測試
這篇文章主要介紹了python自動(dòng)化測試三部曲之request+django實(shí)現(xiàn)接口測試,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
spark?dataframe全局排序id與分組后保留最大值行
這篇文章主要為大家介紹了spark?dataframe全局排序id與分組后保留最大值行實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
python3.7 openpyxl 刪除指定一列或者一行的代碼
這篇文章主要介紹了python3.7 openpyxl 刪除指定一列或者一行,文中通過代碼給大家介紹了python3 openpyxl基本操作,代碼簡單易懂,需要的朋友可以參考下2019-10-10
Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)字典相關(guān)計(jì)算問題示例
這篇文章主要介紹了Python字典相關(guān)計(jì)算問題,結(jié)合實(shí)例形式總結(jié)分析了Python字典相關(guān)的最小值、最大值、排序等操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-02-02
python使用post提交數(shù)據(jù)到遠(yuǎn)程url的方法
這篇文章主要介紹了python使用post提交數(shù)據(jù)到遠(yuǎn)程url的方法,涉及Python使用post傳遞數(shù)據(jù)的相關(guān)技巧,需要的朋友可以參考下2015-04-04
Python如何根據(jù)時(shí)間序列數(shù)據(jù)作圖
這篇文章主要介紹了Python如何根據(jù)時(shí)間序列數(shù)據(jù)作圖,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
Python Pandas中合并數(shù)據(jù)的5個(gè)函數(shù)使用詳解
數(shù)據(jù)合并是數(shù)據(jù)處理過程中的必經(jīng)環(huán)節(jié),pandas作為數(shù)據(jù)分析的利器,提供了五種常用的數(shù)據(jù)合并方式,讓我們看看如何使用這些方法吧!2022-05-05

