手把手教你利用Python创建一个游戏窗口

 更新时间:2022-08-09 08:35:33   作者:佚名   我要评论(0)

目录前言 安装Pyagme检查是否安装Pygame: 一 (检查python是否配置环境变量)检查是否安装Pygame: 二 (检查pygame是否安装)未安装Pygame : 一

前言 

想要利用Python创建一个游戏窗口就需要用到一个强大的第三方功能库: Pygame

那么既然需要用到Pygame这个第三方库 所以在写程序之前需要做一个准备工作:

安装Pyagme

那么既然要安装第三方库(比如Pygame) 所以还需要做一个准备工作:

检查pip是否安装(安装所有第三方库必备的组件)

检查是否安装Pygame:  一 (检查python是否配置环境变量)

分别在cmd(按住Win + r 左下角弹窗输入cmd点确定)中输入以下两行命令检测是否安装了pygame

python
import pygame

如果在cmd中输入python后提示:

" 'python' 不是内部或外部命令,也不是可运行的程序或批处理文件。"

则代表你的python环境变量没有配置好

 那么就需要先配置环境变量

步骤一: 桌面右击此电脑点属性

 步骤二 : 

在弹出的设置界面中点高级系统中设置

 步骤三 : 在弹出的系统属性窗口中点环境变量

 步骤四 : 在弹出的环境变量窗口中在系统变量选项栏中找到选项"Path" 然后选中点编辑

 步骤五: 在弹出的编辑环境变量窗口中点新建

步骤六: 随后粘贴你的Python目录位置

步骤七: 再次点新建 粘贴你的Python目录位置

步骤八: 在你粘贴的Python目录位置加入"\Scripts"(不用带双引号)

步骤九 : 将弹出的窗口全部点确定

恭喜你! Python的环境变量配置完成了!

检查是否安装Pygame:  二 (检查pygame是否安装)

< 检查是否安装Pygame:  一 (检查python是否配置环境变量) >:

分别在cmd(按住Win + r 左下角弹窗输入cmd点确定)中输入以下两行命令检测是否安装了pygame

python
import pygame

如果出现(如上图)

" Hello from the pygame community. https://www.pygame.org/contribute.html "

则代表已安装Pygame

如果出现(如上图)

" ModuleNotFoundError: No module named 'pygame' "

则代表你没有安装Pygame库

未安装Pygame : 一 (检查是否安装pip)

一 在cmd中检查是否将pip配置了环境变量

pip --version

如果出现(如上图)

" pip 21.2.3 from G:\Python\python3\python-3.10-64Bit\lib\site-packages\pip (python 3.10) "

格式: { pip + 版本信息 + pip路径(python版本号) }

则代表你的电脑已安装pip可以继续安装Pygame

 如果出现(如上图)

" 'pip' 不是内部或外部命令,也不是可运行的程序或批处理文件。"

则代表你的电脑没有安装pip需要先安装pip才能继续安装Pygame

未安装Pygame : 二 (利用pip安装Pygame)

< 未安装Pygame : 一 (检查是否安装pip) >

在cmd(按住Win + r 左下角弹窗输入cmd点确定)中输入以下命令安装pygame

pip3 install pygame

当出现Successfully install ed pygame-版本号时

恭喜你! pygame安装完成了! 现在可以去验证一下了!

老样子 在cmd中输入以下命令

python
import pygame

当出现 " Hello from the pygame community. https://www.pygame.org/contribute.html " 时

验证完成! 你的pygame没有问题!

PS:

如果安装速度很慢或按回车长时间没有反应的话可以尝试输入以下命令来提高速度

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple scrapy

使用国内(清华大学)的安装源会比使用官方的安装源要快的多

如果还是慢或没反应 就说明是你网络的问题

当出现Successfully时则代表清华大学安装源添加完成

步入正题: 利用Pygame制作一个简单的游戏窗口

第一部分:

import pygame #导入pygame库
 
pygame.init() # pygame组件初始化
pygame.display.set_caption("测试窗口") # 设置窗口名称
height = 600 # 窗口高度变量
width = 400 # 窗口宽度变量
# 将设置窗口大小赋值给screen是方便以后贴图粘贴的方便
screen = pygame.display.set_mode([height, width]) # 设置窗口尺寸

这一部分的作用是完成窗口的初始化。但是运行程序会发现我们的窗口被创建出来后又立马消失了。这是因为我们没有将窗口设置为循环显示,所以窗口被创建一次后就不会显示了。

第二部分:

while True: # 设置窗口循环事件
    for event in pygame.event.get():# 利用for循环将event在pygame自带的事件中遍历
        if event.type == pygame.QUIT: # 如果event的类型 = pygame退出事件的类型
            pygame.quit() # 则关闭窗口

这一部分的作用是完成pygame窗口事件的处理,上一部分我们的窗口会一闪而过,而这一部分加了检测窗口退出的事件,所以就不会造成第一部分所产生的bug

 可以看到,现在的窗口就可以持续显示了且可以正常的关闭!

总结:

  • 想利用python制作一个简单的游戏窗口就需要用到Pygame库 而这个库需要用pip组件来安装。
  • pygame窗口名称,尺寸(高度x宽度)可以自定义,最后一定要加pygame窗口事件的处理部分。
  • pygame的事件不仅仅有窗口退出检测,还有键盘按键检测,鼠标按键检测……
  • Pygame是一个非常使用的游戏开发库,但是个人建议如果要做游戏尽量不要用Python,工作量太大了!

到此这篇关于利用Python创建一个游戏窗口的文章就介绍到这了,更多相关Python创建游戏窗口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • python中pygame针对游戏窗口的显示方法实例分析(附源码)

相关文章

  • 手把手教你利用Python创建一个游戏窗口

    手把手教你利用Python创建一个游戏窗口

    目录前言 安装Pyagme检查是否安装Pygame: 一 (检查python是否配置环境变量)检查是否安装Pygame: 二 (检查pygame是否安装)未安装Pygame : 一
    2022-08-09
  • Python和C语言利用栈分别实现进制转换

    Python和C语言利用栈分别实现进制转换

    目录问题描述C语言实现Python实现问题描述 利用栈的数据结构实现将十进制数转换成二进制数 C语言实现 顺序表的存储结构实现栈 代码: #inclu
    2022-08-09
  • golang架构设计开闭原则手写实现

    golang架构设计开闭原则手写实现

    目录缘起开闭原则场景思路ICourse.goGolangCourse.goIDiscount.goDiscountedGolangCourse.goopen_close_test.go测试缘起 最近复习设计模式 拜
    2022-08-09
  • go语言中的面向对象

    go语言中的面向对象

    Go语言没有继承、构造函数和析构函数等概念,但是它是面向对象的。 .net中类型系统分为值类型和引用类型,两种转换需要进行装箱和拆箱,都是
    2022-08-09
  • 剖析SpringCloud Feign中所隐藏的坑

    剖析SpringCloud Feign中所隐藏的坑

    目录背景DebugFeign 的实现总结背景 前段时间同事碰到一个问题,需要在 SpringCloud 的 Feign 调用中使用自定义的 URL;通常情况下是没有这个
    2022-08-09
  • python接口自动化使用requests库发送http请求

    python接口自动化使用requests库发送http请求

    目录前言一、requests库二、HTTP 请求方法三、发送GET请求四、发送POST请求五、获取响应数据六、高级操作6.1文件下载6.2文件上传6.3SSL证书验
    2022-08-09
  • React实现监听粘贴事件并获取粘贴板中的截图

    React实现监听粘贴事件并获取粘贴板中的截图

    目录监听粘贴事件并获取粘贴板中的截图TSX中给组件添加监听粘贴事件从粘贴板获取截图文件React监听事件事件监听绑定的事件函数相关扩展监听粘
    2022-08-09
  • Python使用Rich?type和TinyDB构建联系人通讯录

    Python使用Rich?type和TinyDB构建联系人通讯录

    目录引言工具准备通讯录特征如何创建联系人模型如何使用TinyDB创建数据库如何使用typer创建命令行如何使用Rich设计终端如何使用打字命令连接
    2022-08-09
  • 一文解答什么是MySQL的回表

    一文解答什么是MySQL的回表

    目录引言聚簇索引和非聚簇索引是什么?主键索引和非主键索引有什么区别?B-Tree 和 B+Tree 的简单理解如何避免回表?引言 简单来说,回表就是
    2022-08-09
  • resubmit渐进式防重复提交框架示例

    resubmit渐进式防重复提交框架示例

    目录resubmit创作目的特性maven 引入编码自定义spring 整合使用maven 引入@EnableResubmit 注解说明测试代码整合 spring-bootmaven 引入代码
    2022-08-09

最新评论