Python打包成exe文件的詳細(xì)操作指南
前言
我原本是學(xué)C\C++,這是本人第一篇關(guān)于python的文章。請(qǐng)多多關(guān)照!
對(duì)于python為什么要打包成exe文件,是因?yàn)閭鬏斣次募约霸创a給他人是需要配置好一定的環(huán)境才能進(jìn)行編譯操作,而打包成exe文件就可以跟電腦軟件一樣打開(kāi)就可以運(yùn)行也可以分享給他人。但是打包好的exe文件并不是很方便去拆包,所以在打包前一定要測(cè)試之后在打包發(fā)布。
版本控制方面盡量選擇python3.6+32位版本,因?yàn)閣in64位系統(tǒng)向下兼容32位程序,如果不考慮32位系統(tǒng)的話無(wú)所謂,直接python64位版本直接打包就可以,但是只能在win64位系統(tǒng)運(yùn)行。
好了下面我將從安裝pyinstaller開(kāi)始介紹,然后是打包教程,最后是命令解釋。
PS:本次教程,我們不用cmd命令的小黑窗;
本次教程使用:Windows PowerShell(X86)
記得使用:管理員運(yùn)行
圖片最好使用ico后綴的圖片,要么下載個(gè)格式轉(zhuǎn)換。自己轉(zhuǎn)換使用
一、安裝pyinstaller
1.1 安裝pyinstaller,使用安裝命令:
pip3 install pyinstaller

1.2 如果遇到需要更新版本請(qǐng)輸入:
pip install --upgrade pyinstaller
1.3 檢查是否正確安裝

emmmm好像安裝完成了,
1.4 稍等,水一下;
python打包工具眾多,推薦使用pyinstaller,本工具支持window和linux下使用。在windows下,大小為幾十kb的源文件,打包成exe文件可能為幾十兆,原因是把程序所引用的庫(kù)文件也一起打包在一起了。
二、python打包成exe文件(附帶圖標(biāo)打包)
本次打包有兩種方法,根據(jù)自己勤快程度選擇吧!
2.1 第一種:cd到指定文件夾打包存放
第一步:移動(dòng)到指定存放exe文件的文件夾
cd 文件夾路徑 例子:cd C:\FILE2\python_file
第二步:打包就完事了(看代碼)
pyinstaller -F -w -i 路徑一(圖標(biāo)) 路徑二(py文件) 例子:pyinstaller -F -w -i D:\python_file\BindundunDemo\qt-logo.ico D:\python_file\BindundunDemo\main.py
2.2 第二種方法:cd到py源文件夾內(nèi)打包存放
第一步:移動(dòng)到源文件文件內(nèi)
cd 文件夾路徑 例子:cd C:\FILE2\python
第二步:還是打包就完事了(看代碼)
pyinstaller -F -w -i 圖標(biāo)名.后綴 源文件.py 例子:pyinstaller -F -w -i qt-logo.ico one.py

2.3最終效果
dist文件里存放的是你生成的exe文件,點(diǎn)擊即可使用。


至此,本次教程結(jié)束!
下面還有命令解釋,請(qǐng)細(xì)細(xì)品嘗。
參考:命令解釋
| 命令 | 命令全稱 | 命令解釋 |
|---|---|---|
| -F | –onefile | 打包成單個(gè)可執(zhí)行文件,如果你的代碼都寫在一個(gè).py文件,則可以使用,如果是多個(gè).py文件,建議不要使用。 |
| -D | –onedir | 打包多個(gè)文件,在dist中生成很多依賴文件,適合以框架形式編寫工具代碼,該方式代碼較易于維護(hù)。默認(rèn)編譯就是-D的 |
| -K | –tk | 在部署時(shí)包含 TCL/TK。 |
| -a | –ascii | 不包含編碼.在支持Unicode的python版本上默認(rèn)包含所有的編碼。 |
| -d | –debug | 產(chǎn)生debug版本的可執(zhí)行文件 |
| -w | –windowed,–noconsole | 使用Windows子系統(tǒng)執(zhí)行.當(dāng)程序啟動(dòng)的時(shí)候不會(huì)打開(kāi)命令行(僅對(duì)Windows有效) |
| -c | –nowindowed,–console | 使用控制臺(tái)子系統(tǒng)執(zhí)行(默認(rèn))(只對(duì)Windows有效) |
| -s | –strip | 可執(zhí)行文件和共享庫(kù)將run through strip。注意Cygwin的strip可能使普通的win32 Dll無(wú)法使用 |
| -X | –upx | 如果有UPX安裝(執(zhí)行Configure.py時(shí)檢測(cè)),則會(huì)壓縮執(zhí)行文件(Windows系統(tǒng)中的DLL也會(huì))。 |
| -o DIR | –out=DIR | 指定spec文件的生成目錄,如果沒(méi)有指定,而且當(dāng)前目錄是PyInstaller的根目錄,會(huì)自動(dòng)創(chuàng)建一個(gè)用于輸出(spec和生成的可執(zhí)行文件)的目錄.如果沒(méi)有指定,而當(dāng)前目錄不是PyInstaller的根目錄,則會(huì)輸出到當(dāng)前的目錄下。 |
| -p DIR | –path=DIR | 設(shè)置導(dǎo)入路徑(和使用PYTHONPATH效果相似)??梢杂寐窂椒指罘?Windows使用分號(hào),Linux使用冒號(hào))分割,指定多個(gè)目錄.也可以使用多個(gè)-p參數(shù)來(lái)設(shè)置多個(gè)導(dǎo)入路徑,讓pyinstaller自己去找程序需要的資源 |
| -i <FILE.ICO> | –icon=<FILE.ICO> | 將file.ico添加為可執(zhí)行文件的資源(只對(duì)Windows系統(tǒng)有效),改變程序的圖標(biāo) pyinstaller -i ico路徑 xxxxx.py |
| –i <FILE.EXE, N> | –icon=<FILE.EXE, N> | 將file.exe的第n個(gè)圖標(biāo)添加為可執(zhí)行文件的資源(只對(duì)Windows系統(tǒng)有效) |
| -v FILE | –version=FILE | 將verfile作為可執(zhí)行文件的版本資源(只對(duì)Windows系統(tǒng)有效) |
| -n NAME | –name=NAME | 可選的項(xiàng)目(產(chǎn)生的spec的)名字.如果省略,第一個(gè)腳本的主文件名將作為spec的名字 |
總結(jié)
到此這篇關(guān)于Python打包成exe文件的詳細(xì)操作指南的文章就介紹到這了,更多相關(guān)Python打包成exe文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 一篇文章學(xué)會(huì)兩種將python打包成exe的方式
- Python打包為exe詳細(xì)教程
- 使用cx_freeze把python打包exe示例
- Python打包成.exe可執(zhí)行文件的詳細(xì)步驟
- 史上最詳細(xì)的Python打包成exe文件教程
- Python打包后的exe還原成.py的實(shí)現(xiàn)步驟
- 將python打包后的exe還原成py
- Python打包exe時(shí)各種異常處理方案總結(jié)
- Python打包代碼成exe可執(zhí)行文件的方法總結(jié)
- Python打包成exe常用的四種方法小結(jié)
- Python打包成exe的兩種方法
- python代碼打包到exe的實(shí)現(xiàn)示例
相關(guān)文章
Python基礎(chǔ)之循環(huán)語(yǔ)句相關(guān)知識(shí)總結(jié)
今天給大家?guī)?lái)的是關(guān)于Python基礎(chǔ)的相關(guān)知識(shí),文章圍繞著Python循環(huán)語(yǔ)句展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06
使用Python實(shí)現(xiàn)U盤數(shù)據(jù)自動(dòng)拷貝
這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)U盤數(shù)據(jù)自動(dòng)拷貝,即當(dāng)電腦上有U盤插入時(shí)自動(dòng)復(fù)制U盤內(nèi)的所有內(nèi)容,希望對(duì)大家有所幫助2025-02-02
python的列表生成式,生成器和generator對(duì)象你了解嗎
這篇文章主要為大家詳細(xì)介紹了python的列表生成式,生成器和generator對(duì)象,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-03-03
Python實(shí)現(xiàn)的爬取網(wǎng)易動(dòng)態(tài)評(píng)論操作示例
這篇文章主要介紹了Python實(shí)現(xiàn)的爬取網(wǎng)易動(dòng)態(tài)評(píng)論操作,結(jié)合實(shí)例形式分析了Python針對(duì)網(wǎng)易評(píng)論正則爬取及json格式數(shù)據(jù)轉(zhuǎn)換、提取等相關(guān)操作技巧,需要的朋友可以參考下2018-06-06
Python網(wǎng)絡(luò)爬蟲中的同步與異步示例詳解
這篇文章主要給大家介紹了關(guān)于Python網(wǎng)絡(luò)爬蟲中同步與異步的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-02-02
Python Dask庫(kù)處理大規(guī)模數(shù)據(jù)集的強(qiáng)大功能實(shí)戰(zhàn)
Dask是一個(gè)靈活、開(kāi)源的Python庫(kù),專為處理大規(guī)模數(shù)據(jù)集而設(shè)計(jì),與傳統(tǒng)的單機(jī)計(jì)算相比,Dask能夠在分布式系統(tǒng)上運(yùn)行,有效利用集群的計(jì)算資源,本文將深入介紹Dask的核心概念、功能和實(shí)際應(yīng)用,通過(guò)豐富的示例代碼展示其在大數(shù)據(jù)處理領(lǐng)域的強(qiáng)大能力2023-12-12
Python基于當(dāng)前時(shí)間批量創(chuàng)建文件
這篇文章主要介紹了Python基于當(dāng)前時(shí)間批量創(chuàng)建文件,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
Python使用pywifi模塊實(shí)現(xiàn)輕松查看WIFI密碼
這篇文章主要為大家詳細(xì)介紹了Python如何使用pywifi模塊實(shí)現(xiàn)輕松查看WIFI密碼,如果你不幸忘記了某個(gè)wifi的密碼,但是你大概知道密碼的一些構(gòu)成,也可以參考下面的腳本2025-05-05

