首页 > 电脑 > python3使用pygame模块 程序运行成功但是出现pygame的窗口会闪退

python3使用pygame模块 程序运行成功但是出现pygame的窗口会闪退

电脑 2022-09-30

mac安装完pygame后运行测试游戏显示意外退出?

可能还是环境的问题,你安装的pygame没有被识别到。 建议先试用命令pip list看下pygame会不会列出来,同时看下版本,然后再看下是不是和你当前的python版本对应。 建议安装anaconda,直接管理安装包,免去环境配置这些东西,省得出错。

用python的pygame,但每次程序一运行,pygame window窗口能出现,但是下图这种状态。

  1. event英文翻译是事件 get 获取 type是样式,类型的意思,所以他这个都是有规律的,但是有顺序事件在前,后面跟属性

  2. 同时也有父子(层级)关系

  3. event.get() 获取到的事件

  4. event.type() 事件类型

  5. event.key() 按键事件

  6. 一般都是写在while里面,因为这是个不断循环的过程,不然,只执行一便达不到实际要求,这是Pygame里面设定好的

这是贪吃蛇游戏的一段代码(一部分):

txt=font.render('GAMEOVER',True,(255,0,0))
screen.blit(txt,(size[0]/6,size[1]*2/5-20))#(0,0)(size[0]/6,size[1]*2/5)100号字中心位置
direction='right'#初始方向,向右
changeDirection=direction#定义一个改变方向的变量,按键
running=True
whileTrunning:
foreventinpygame.event.get():#从队列中获取事件
ifevent.type==QUIT:#判断事件类型是否为退出事件
#pygame.quit()
sys.exit()

elifevent.type==KEYDOWN:#如果按键被按下(事件)

ifevent.key==K_RIGHTorevent.key==K_d:#如果是右键头或者是d,蛇向右移动
changeDirection='right'
ifevent.key==K_LEFTorevent.key==K_a:#如果是左键头或者是a,蛇向左移动
changeDirection='left'
ifevent.key==K_UPorevent.key==K_w:
changeDirection='up'
ifevent.key==K_DOWNorevent.key==K_s:
changeDirection='down'
#这下面一行可以忽略,
ifevent.key==K_ESCAPE:#对应键盘上的Esc键,表示退出
pygame.event.post(pygame.event.Event(QUIT))
#绘制文本,刷新显示
screen.blit(txt,(20,10))
screen.fill(blackColor)#放在for语句一列,属于while的(子)层级,循环不断的刷新

python代码在IDLE上正常运行,但双击就闪退

打开cmd窗口,cd到py文件路径,直接输入python文件名,然后看到底有什么错

Python 中pygame窗口关闭而不退出程序,有哪位大大知道怎么弄吗

如果说pygame只关闭窗口不能退出程序,只要在sys.exit()前面加上pygame.quit()就行了

为什么用pygame编写的程序能正常运行,但是打包成可执行文件(.exe)后出错呢?

试一下用PyInstaller www.pyinstaller.org 可用一句命令打包:pyinstaller -F -w -i manage.ico app.py -F:打包为单文件 -w:Windows程序,不显示命令行窗口 -i:是程序图标,app.py是你要打包的py文件 另外需要pywin32。 安装方法: 先跑pip install pywin32再跑pip install pyinstaller

标签:信息技术 python Python入门 编程

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18