下面看下通过Pyinstaller打包Pygame库写的小游戏程序出现的问题解决方法
# -基于Python的Pygame库的GUI游戏
游戏内容是通过飞船发射子弹来射击外星人
空格键为开火,左右方向键移动,并设立了
不同关卡。
使用说明:
开发环境,游戏直接运行alien_invasion.exe即可,也可在具有Python3环境下运行alien_invasion.py
练习环境:
Python:3.5.4 64位
pyinstall:3.3.1
pyinstall使用:
pyinstaller -F demo.py
参数 含义
-F 指定打包后只生成一个exe格式的文件
-D –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
-c –console, –nowindowed 使用控制台,无界面(默认选项)
-w –windowed, –noconsole 使用窗口,无控制台
-p 添加搜索路径,让其找到对应的库。
-i 改变生成程序的icon图标
打包注意事项:
1.打包有2种方式:
- 第一种是使用'-F'打包成单一的可执行文件,如alien_invasion.exe,此项目需要将
- images文件夹放置在与其同一目录下;
- 第二种是默认使用'-D'方式,(但是我打包完成后无法运行,打包时经常出现“hidden import “pygame._view”not found”)
2.打包的文件与《Python编程:从入门到实践》练习的项目文件有所差异,具体为
button.py与scoreboard.py中的字体做了改动,由
'pygame.font.SysFont(None, 48)'=>'pygame.font.SysFont('arial', 36)'
3.使用pyinstaller打包时,不会自动包含图片文件,所以最简单的方式是打包后将图片放在运行程序的
相应路径下。
!!!打包完毕后一定要讲你的素材images放在exe目录里面,以便exe文件能够链接到你的素材。
PS:指定dist生成目录路径(而不是命令行当前目录)
pyinstaller -F E:/*/*/*.py --distpath=E:*/*/*/dist
接着介绍下使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件的方法。
一、安装Pyinstaller
环境:python3.6、window10
注意事项:
- python64位版本打包的exe,只能在64位操作系统使用
- 打包文件夹和文件的名称不能用中文
- pygame打包是里面的字体要改成"arial"格式。 pygame.font.SysFont("宋体", 32) 32) 换成 pygame.font.SysFont('arial',32)
1、直接安装
pip命令安装:pip install Pyinstaller
安装成功后会提示如下图所示
2、Anaconda环境下安装
如果是在Anaconda环境下直接打包,可能会将其中大部分扩展都打包进去了,造成打包后的exe文件过大,为此有以下解决方案(如果未出现此问题的同学请跳过)。
- 建立虚拟环境 :pipenv install
- 进入虚拟环境:pipenv shell
- 安装所需模块 pip install pygame
- 打包的模块也要安装 pip install pyinstaller
本人在C:/Users/EDZ/目录中新建Pyinstaller文件,首先进入目录,建立虚拟环境,进入虚拟环境,最后安装程序所需的安装模块以及pyinstaller。具体过程如图所示:
二、使用Pyinstaller打包生成exe文件
将要打包的py文件放入所创建的C:\Users\EDZ\Pyinstaller目录中,将自定义程序图标ico文件,也一同放进程序所在目录程序。
介绍一下 Pyinstaller 常用的参数用法:
- -F: 表示生成单个可执行文件
- -D:表示打包多个文件,在dist中生成很多依赖文件,
- -w:指定生成 GUI 软件,表示去掉控制台窗口
- -i <Icon File>: 指定打包后可执行文件的图标
命令:pyinstaller -F -w -i snaker.ico retro_snaker.py
稍微等待后,如果成功则会提示successfully,如图所示:
三、运行生成的exe文件
打包完成后,exe程序将会产生在打包目录的dist文件中。
如图所示:
那么我们就可以打开并运行你所打包的exe文件了
四、exe文件运行中的问题
缺少MSVisualC++ 2015动态库
打开程序,报错提示:无法定位程序输入点ucrtbase.terminate
于动态链接库api-ms-win-crt-runtime-l1-1-0.dll
上,如图所示:
解决方案:安装:Visual C++ Redistributable for Visual Studio 2015
注:下载对应版本安装
微软官网:https://www.microsoft.com/zh-cn/download/confirmation.aspx"external nofollow" href="https://www.microsoft.com/en-us/download/details.aspx">https://www.microsoft.com/en-us/download/details.aspx"color: #ff0000">总结
以上所述是小编给大家介绍的使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]