通过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库写的小游戏程序出现的问题解决方法)