Python文件带图片打包exe(Pyinstaller)
生活随笔
收集整理的這篇文章主要介紹了
Python文件带图片打包exe(Pyinstaller)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.安裝
pip install pywin32 pip install pyinstaller2.打包
pyinstaller -F --noupx -w -i favicon.ico main.py -n name-F:打包成一個(gè)EXE文件
-w:不帶console輸出控制臺(tái),window窗體格式
–paths:依賴(lài)包路徑
–icon:圖標(biāo)
–noupx:不用upx壓縮
–clean:清理掉臨時(shí)文件
注意事項(xiàng):
1.在import其他py文件時(shí)必須寫(xiě)絕對(duì)路徑,寫(xiě)相對(duì)路徑會(huì)報(bào)錯(cuò)找不到module
2. 不加–noupx可打包成功,但文件可能閃退
3.圖片文件打包
如果有圖片文件,則須在打包之前把圖片轉(zhuǎn)化成py文件,再使用上述方法打包。
這里采用base64格式
PicToPy.py
import base64def pictopy(picture_names, py_name):"""將圖像文件轉(zhuǎn)換為py文件:param picture_name::return:"""write_data = []for picture_name in picture_names:filename = picture_name.replace('.', '_')open_pic = open("%s" % picture_name, 'rb')b64str = base64.b64encode(open_pic.read())open_pic.close()# 注意這邊b64str一定要加上.decode()write_data.append('%s = "%s"\n' % (filename, b64str.decode()))f = open('%s.py' % py_name, 'w+')for data in write_data:f.write(data)f.close()if __name__ == '__main__':pics = ["logo_2.png", "logo.png"]pictopy(pics, 'memory_pic') # 將pics里面的圖片寫(xiě)到 memory_pic.py 中print("ok")完成后將會(huì)在當(dāng)前路徑下看到一個(gè)memory_pic.py文件
logo_2_png = "iVBORw0KGgoAAAANSUhEUgAAAXcAAABgCAIA...太長(zhǎng)省略" logo_png = "iVBORw0KGgoAAAANSUhEUgAAAX0AAAClCAYAAACwYy2nAAAAAXNSR...太長(zhǎng)省略"在文件中使用pyqt顯示圖片
# 取base64圖片 logo = base64.b64decode(logo_png) logo_2 = base64.b64decode(logo_2_png) # pyqt頁(yè)面 base64轉(zhuǎn)化QPixmap icon = QPixmap() icon.loadFromData(logo_2) self.label_logo.setPixmap(icon)總結(jié)
以上是生活随笔為你收集整理的Python文件带图片打包exe(Pyinstaller)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: [转]一个阿里巴巴码农的六年回眸
- 下一篇: 四年级计算机课程表制作教案,四年级信息技