您好,登錄后才能下訂單哦!
小編給大家分享一下python將py變成exe文件的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
安裝pyinstaller
打開cmd窗口,輸入pip install pyinstaller,命令行輸出successfully表示成功。
生成exe文件
一、單個(gè)py文件:
在py文件目錄下,打開cmd窗口,輸入pyinstall -F XXX.py,執(zhí)行成功的話,會(huì)在當(dāng)前目錄生成一個(gè)dist文件夾,XXX.exe文件在此文件夾下。
二、多個(gè)py文件
1、將所有要執(zhí)行的py文件放在一個(gè)大文件夾下(里面允許有多個(gè)文件夾)
2、命令行輸入pyi-makespec main.py 或者 pyi-makespec -F main.py(main.py為Python程序的入口py文件)。
pyi-makespec main.py --> 打包之后會(huì)生成一個(gè)目錄
pyi-makespec -F main.py --> 打包之后只會(huì)生成一個(gè)exe
選擇一個(gè)命令即可。
3、現(xiàn)在文件夾下生成了一個(gè)main.spec文件和兩個(gè)文件夾
4、編輯main.spec文件,找到a = Analysis(),先修改第一個(gè)參數(shù),這里面的列表都必須是py文件
a = Analysis(['pin.py'], pathex=['F:\\python_work\\pytest\\pin'], binaries=[], datas=[], hiddenimports=[], hookspath=[], 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)
如果用到了其他的py文件,就在第一個(gè)列表里面加入相應(yīng)py文件的路徑,如果是同級(jí)目錄下,直接寫文件名,如果不在同一個(gè)文件下,寫完整路徑。
a = Analysis(['pin.py', 'cursor_control.py'], pathex=['F:\\python_work\\pytest\\pin'], binaries=[], datas=[], hiddenimports=[], hookspath=[], 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)
如果用到了非py文件需要打包,那么找到datas列表,將非py文件的路徑與文件夾名寫在元組里。
例如:
datas = [('C:\\project\\test\\images','images'),('C:\\project\\test\\EventLogs','EventLogs')]
datas:
第一個(gè)參數(shù)是Python中的非py類型文件的路徑
第二個(gè)參數(shù)是非py文件保存此資源的文件夾名稱,要和路徑中的文件夾名稱相同。
5、保存文件,在.spec文件路徑下打開命令行,輸入pyinstaller -D main.spec 或者 pyinstaller main.spec
如果在第2條中選擇了pyi-makespec -F main.py ,那么此處只需要執(zhí)行pyinstaller main.spec即可
6、生成的exe程序在dist文件夾中,dist文件夾里包含了整個(gè)項(xiàng)目所需環(huán)境,可在其他電腦中進(jìn)行使用。
特別注意: 如果寫了關(guān)于pyqt5界面的程序的話,在其主函數(shù)里面導(dǎo)入PYQT5之前需要加上如下代碼
import os if hasattr(sys, 'frozen'): os.environ['PATH'] = sys._MEIPASS + ";" + os.environ['PATH'] from PyQt5.QtWidgets import QApplication, QMainWindow, QFileDialog from PyQt5 import QtCore, QtGui, QtWidgets
看完了這篇文章,相信你對python將py變成exe文件的方法有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。