詳解使用PyInstaller將Pygame庫編寫的小游戲程序打包為exe文件
一、安裝Pyinstaller
環(huán)境:python3.6、window10
注意事項:
python64位版本打包的exe,只能在64位操作系統(tǒng)使用
打包文件夾和文件的名稱不能用中文
pygame打包是里面的字體要改成"arial"格式。 pygame.font.SysFont("宋體", 32) 32) 換成 pygame.font.SysFont('arial',32)
1、直接安裝
pip命令安裝:pip install Pyinstaller
安裝成功后會提示如下圖所示
2、Anaconda環(huán)境下安裝
如果是在Anaconda環(huán)境下直接打包,可能會將其中大部分?jǐn)U展都打包進(jìn)去了,造成打包后的exe文件過大,為此有以下解決方案(如果未出現(xiàn)此問題的同學(xué)請?zhí)^)。
建立虛擬環(huán)境 :pipenv install
進(jìn)入虛擬環(huán)境:pipenv shell
安裝所需模塊 pip install pygame
打包的模塊也要安裝 pip install pyinstaller
本人在C:/Users/EDZ/目錄中新建Pyinstaller文件,首先進(jìn)入目錄,建立虛擬環(huán)境,進(jìn)入虛擬環(huán)境,最后安裝程序所需的安裝模塊以及pyinstaller。具體過程如圖所示:
二、使用Pyinstaller打包生成exe文件
將要打包的py文件放入所創(chuàng)建的C:\Users\EDZ\Pyinstaller目錄中,將自定義程序圖標(biāo)ico文件,也一同放進(jìn)程序所在目錄程序。
介紹一下 Pyinstaller 常用的參數(shù)用法:
- -F: 表示生成單個可執(zhí)行文件
- -D:表示打包多個文件,在dist中生成很多依賴文件,
- -w:指定生成 GUI 軟件,表示去掉控制臺窗口
- -i <Icon File>: 指定打包后可執(zhí)行文件的圖標(biāo)
命令:pyinstaller -F -w -i snaker.ico retro_snaker.py
稍微等待后,如果成功則會提示successfully,如圖所示:
三、運行生成的exe文件
打包完成后,exe程序?qū)a(chǎn)生在打包目錄的dist文件中。
如圖所示:
那么我們就可以打開并運行你所打包的exe文件了
四、exe文件運行中的問題
缺少MSVisualC++ 2015動態(tài)庫
打開程序,報錯提示:無法定位程序輸入點ucrtbase.terminate于動態(tài)鏈接庫api-ms-win-crt-runtime-l1-1-0.dll上,如圖所示:
解決方案:安裝:Visual C++ Redistributable for Visual Studio 2015
注:下載對應(yīng)版本安裝
微軟官網(wǎng):https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=48145
安裝后重啟下電腦
若還不行,嘗試安裝下這個補?。篕B2999226
微軟官網(wǎng):https://www.microsoft.com/en-us/download/details.aspx?id=49093
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python實現(xiàn)一個帶權(quán)無回置隨機抽選函數(shù)的方法
這篇文章主要介紹了Python實現(xiàn)一個帶權(quán)無回置隨機抽選函數(shù)的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Python實現(xiàn)多態(tài)、協(xié)議和鴨子類型的代碼詳解
問起面向?qū)ο蟮娜筇匦?,幾乎每個人都能對答如流:封裝、繼承、多態(tài)。今天我們就要來說一說Python實現(xiàn)多態(tài)、協(xié)議和鴨子類型,感興趣的朋友跟隨小編一起看看吧2019-05-05Python實現(xiàn)的插入排序,冒泡排序,快速排序,選擇排序算法示例
這篇文章主要介紹了Python實現(xiàn)的插入排序,冒泡排序,快速排序,選擇排序算法,結(jié)合實例形式總結(jié)分析了Python插入排序,冒泡排序,快速排序,選擇排序等算法的實現(xiàn)與使用技巧,需要的朋友可以參考下2019-05-05在Python中將函數(shù)作為另一個函數(shù)的參數(shù)傳入并調(diào)用的方法
今天小編就為大家分享一篇在Python中將函數(shù)作為另一個函數(shù)的參數(shù)傳入并調(diào)用的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01使用Python和Scrapy實現(xiàn)抓取網(wǎng)站數(shù)據(jù)
Scrapy是一個功能強大的網(wǎng)絡(luò)爬蟲框架,允許開發(fā)者輕松地抓取和解析網(wǎng)站內(nèi)容,這篇文章主要為大家介紹了如何使用Python的Scrapy庫進(jìn)行網(wǎng)站數(shù)據(jù)抓取,需要的可以參考一下2023-05-05