python將多個py文件和其他文件打包為exe可執(zhí)行文件
前言:
最近在學習PYQT5,感覺還挺有趣的,順便記錄一下自己的打包記錄,也就當學習筆記啦,如果剛好也在學習python打包的小伙伴可以學一學哦。
1、準備好打包文件
首先準備好將要打包的工程文件(/夾)。在這個文件下,我們將frame_main.py當做主程序。
2、下載安裝Pyinstaller
在 cmd 中進入我們當前的python環(huán)境中,并進入當前項目的文件夾下:
下載安裝Pyinstaller
3、生成.spec文件
.spec文件為安裝配置文件,作用是對可執(zhí)行文件進行配置!因為我們把frame_main.py 當做主程序,所以輸入如下命令
pyi-makespec frame_main.py
可以看到此時文件夾下生成了一個 frame_main.spec 文件,其內(nèi)容如下:
# -*- mode: python ; coding: utf-8 -*- block_cipher =?None a = Analysis(['frame_main.py'], ?????????????pathex=[], ?????????????binaries=[], ?????????????datas=[], ?????????????hiddenimports=[], ?????????????hookspath=[], ?????????????hooksconfig={}, ?????????????runtime_hooks=[], ?????????????excludes=[], ?????????????win_no_prefer_redirects=False, ?????????????win_private_assemblies=False, ?????????????cipher=block_cipher, ?????????????noarchive=False) pyz = PYZ(a.pure, a.zipped_data, ?????????????cipher=block_cipher) exe = EXE(pyz, ??????????a.scripts, ??????????[], ??????????exclude_binaries=True, ??????????name='frame_main', ??????????debug=False, ??????????bootloader_ignore_signals=False, ??????????strip=False, ??????????upx=True, ??????????console=True, ??????????disable_windowed_traceback=False, ??????????target_arch=None, ??????????codesign_identity=None, ??????????entitlements_file=None?) coll = COLLECT(exe, ???????????????a.binaries, ???????????????a.zipfiles, ???????????????a.datas, ???????????????strip=False, ???????????????upx=True, ???????????????upx_exclude=[], ???????????????name='frame_main')
4、配置.spec文件
我們需要對其進行配置,包括文件和靜態(tài)資源(圖片等),
在Analysis 加入所有py文件,datas中加入所有靜態(tài)資源。還有exe文件的圖標,記住圖標用絕對路徑。
5、生成exe文件
輸入命令:
pyinstaller?-F?-w?frame_main.spec
(備注:-F是將一個文件打包而成的,-w是運行時不出現(xiàn)黑色窗口的)
打包完成之后會在當前目錄文件夾下生成一個dist文件夾,打開之后會發(fā)現(xiàn)我們的 exe 文件。
雙擊 exe 文件,竟然會發(fā)現(xiàn)怎么還是會出現(xiàn)黑色窗口呢,也就是控制臺。
經(jīng)過我?guī)煹艿狞c撥,終于發(fā)現(xiàn)了問題的所在,將spec文件中的 :
console =?True 改為: console =?False
繼續(xù)運行,再次打包。
pyinstaller?-F?-w?frame_main.spec
雙擊 exe 文件
這樣就不會出現(xiàn)黑框啦.....
到此這篇關于python將多個py文件和其他文件打包為exe可執(zhí)行文件的文章就介紹到這了,更多相關python 文件打包 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Numpy中array數(shù)組對象的儲存方式(n,1)和(n,)的區(qū)別
本文主要介紹了Numpy中array數(shù)組對象的儲存方式(n,1)和(n,)的區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04Python中數(shù)組,列表:冒號的靈活用法介紹(np數(shù)組,列表倒序)
下面小編就為大家分享一篇Python中數(shù)組,列表:冒號的靈活用法介紹(np數(shù)組,列表倒序),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04pyspark給dataframe增加新的一列的實現(xiàn)示例
這篇文章主要介紹了pyspark給dataframe增加新的一列的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-04-04Python+Pygame實現(xiàn)之走四棋兒游戲的實現(xiàn)
大家以前應該都聽說過一個游戲:叫做走四棋兒。直接在家里的水泥地上用燒完的炭火灰畫出幾條線,擺上幾顆石頭子即可。當時的火爆程度可謂是達到了一個新的高度。本文將利用Pygame實現(xiàn)這一游戲,需要的可以參考一下2022-07-07