1.安裝pyinstaller
pip install pyinstaller
2.打包
打開cmd,切換到需要打包的文件(demo.py)目錄。執行
pyinstaller -F -w demo.py
。
生成的exe文件就在子目錄dist中。-F表示指定打包后只生成一個exe格式的文件,-w表示窗口,無控制台。
3.修改exe圖標
-i icon.ico 或者 --icon=icon.ico
圖標文件放在要打包的文件同目錄中。
4.替換tk默認圖標
如果文件內采用自定義的圖標替換tk默認圖標,使用說明文檔的方法root.iconbitmap(icon.ico)
替換tk圖標后,打包的exe執行失敗。原因是圖標沒有打進去,解決方法是打包成文件夾,或者把圖標轉化成base64數據。
這段程序可將圖標gen.ico轉換成icon.py文件里的base64數據 import base64 open_icon = open("gen.ico","rb") b64str = base64.b64encode(open_icon.read()) open_icon.close() write_data = "img = '{0}'".format(b64str) f = open("icon.py","w+") f.write(write_data) f.close()
修改主程序:
import base64 from icon import img import os 將import進來的icon.py里的數據轉換成臨時文件tmp.ico,作為圖標 tmp = open('tmp.ico', 'wb+') tmp.write(base64.b64decode(img)) tmp.close() root.iconbitmap('tmp.ico') os.remove('tmp.ico') MainSerialToolUI(master=root) root.resizable(False, False) root.mainloop()
作者:suanite
鏈接:https://www.jianshu.com/p/bf592bd0a034
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。