Python 從GUI到exe

1、pycharm 創(chuàng)建一個新的虛擬環(huán)境

若想最后打包成的.exe文件小一點(diǎn),從源頭開始,減少無用的包
【pycharm創(chuàng)建虛擬環(huán)境及具體(意義)說明】
事實(shí)證明是有用的,一個小小的功能壓縮文件300多M啊,重建一個強(qiáng)多了,就20M。。。

2、寫你的腳本.py,用什么包下什么包

pip install PySimpleGUI 寫GUI的包 好用

import PySimpleGUI as sg

這個包具體用法,找到一個集大成者的腳本demo:https://github.com/PySimpleGUI/PySimpleGUI/blob/069d1d08dc7ec19a8c59d5c13f3b8d60115c286b/DemoPrograms/Demo_All_Elements.py
幾乎有用到所有元素

這種界面也很大氣
https://github.com/PySimpleGUI/PySimpleGUI/blob/069d1d08dc7ec19a8c59d5c13f3b8d60115c286b/DemoPrograms/Demo_Dashboard.py

3、打包

pip install pyinstaller
一定不要忘記在虛擬環(huán)境里重新下載pyinstaller,否則會用你之前的,多下很多的依賴庫
pyinstaller -D -w -i icon C:\Users\mal\PycharmProjects\WriteGui\yishuan_GUI.py
-D:打包出文件,啟動exe很快,在dist文件夾里 ?? 好像不加這個也行
-F:打包出一個exe,啟動速度慢
-i:圖標(biāo)文件,不用也行,就是丑了點(diǎn)
--clean:標(biāo)志清除pyinstaller緩存

打包多個.py時:上面的命令后面跟-p 1.py -p 2.py -p 3.py,全用-p跟著就行

4、生成的文件

https://blog.csdn.net/dreamstar613/article/details/106644341/

pyinstaller 打包 直接使用命令  pyinstaller [-F/-D] [-w/-c] [-i xxx.ico] hello.py   

 最簡單的打包:切換到hello.py所在目錄 打開cmd ,執(zhí)行命令  pyinstaller hello.py,就打包完成。
 在當(dāng)前目錄下會生成build文件夾和 dist文件夾 和 hello.spec文件。

(1)hello.spec 文件 pyinstaller 就是根據(jù)這個文件種的配置來生成hello.exe的
         要讀外部文件的話 可以在data=[] 加文件 data=[('example.txt', '.')]
         然后運(yùn)行命令 pyinstaller hello.spec 

(2)dist文件夾內(nèi)的hello文件夾內(nèi) 有可執(zhí)行文件hello.exe。因為默認(rèn)的-D,如果要在別的電腦運(yùn)行,需要把這個
hello文件夾整個復(fù)制過去。
(3)build文件夾的作用相當(dāng)于PyInstaller的工作空間,PyInstaller運(yùn)行相關(guān)的文件和日志都在這個文件夾中,
打包完成后可以直接刪除。
————————————————
版權(quán)聲明:本文為CSDN博主「dream_heheda」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/dreamstar613/article/details/106644341/

新建虛擬環(huán)境還會多個venv文件夾(venv這是你的python環(huán)境叫啥名 這文件夾就叫啥名)
最重要的就是dist文件夾,把它復(fù)制出來就行,里面的exe搞個快捷方式出來
venv也得復(fù)制出來 這是它的環(huán)境 ------ ??不加-D好像就不要這個了

5、出錯記錄

(1)忘重新下載pyinstaller,導(dǎo)致打包的文件特別多

(2)打包好的exe,使用時出現(xiàn)錯誤
?(i)“SupportingPluginAvailableButNotInstalled: Please install one of these plugins for read data in 'xlsx': pyexcel-xls,pyexcel-xlsx”,重新下載也沒啥用,
?(ii)錯誤記錄里有“pyexcel_io/get_data”什么的

?網(wǎng)上搜索得知可能是 pyinstaller 與 pyexcel_xls 沖突,
法一:所以把from pyexcel_xls import get_data 改成了 from pyexcel_xlsx import get_data,結(jié)果還ok,算是正常了
法二:pyexcel_xls 0.6.2 版本 不沖突,也正好能用get_data (舊版本叫 read_data,舊版本腳本里能用,但打包成exe就不行了)這個好,xls,xlsx都能讀

(3)快捷方式在別的電腦無法正常使用
? 是因為設(shè)置的快捷方式是讀自己路徑,可以右鍵管理設(shè)置使讀相對路徑(但是我不會),或者新建個快捷方式就好了嘛
(4)pycharm 下方 local 失去了 venv 這個環(huán)境(因為把文件倒來倒去)
? File - Setting - python interpreter - 齒輪 - Add - exist environment - 把想要的 venv - Script - python.exe填好,環(huán)境就又回來了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容