经过一段时间的python学习,爬取数据已经无法满足我的需求,于是想起了游戏。

下面做一个最简单的游戏,人物循环走动。

python中我们用到强大的库pygame

Pygame是被设计用来写游戏的python模块集合,Pygame是在优秀的SDL库之上开发的功能性包。使用python可以导入pygame来开发具有全部特性的游戏和多媒体软件,Pygame是极度轻便的并且可以运行在几乎所有的平台和操作系统上

pycharm如何安装pygame,这里重点说一下,以下是

https://pypi.org/project/pygame/1.9.3/

如果你使用命令pip install pygame==1.9.3 安装失败,并且安装下载.whl依然失败的话,你可以尝试安装他的稳定版本 pygame2.1.2版本,直接下面的命令

pip install pygame

安装完成后,建一个纯净版的python工程,这里就不赘述了。

下面是精华版代码

游戏开始步骤
1.库初始化

pygame.init()

2.设置游戏屏幕宽高

# 设置屏幕宽高
screen = pygame.display.set_mode((500, 500))

3.定义游戏名称

# 设置游戏名称
pygame.display.set_caption("小孩运动")

4.设置游戏背景图
我们将背景图放在static目录下取名为back.png


然后设置游戏背景图片

# 设置游戏的背景图片
bg = pygame.image.load("static/back.png")
screen.blit(bg, (0, 0))

5.设置人物或者物体最初位置
我们这里以一个小孩图片为例,小孩图像也放在static目录下,取名未child.png

# 设置小孩初始运动位置
child = pygame.image.load("static/child.png")
screen.blit(child, (200, 200))

接下来是关键,小孩要循环在X轴一定,而且有一定的速度,当移动超过屏幕的时候,要循环走动,接下来要怎么处理呢,请看代码

# 创建时钟对象,可以控制游戏循环的频率
clock = pygame.time.Clock()# 记录小孩移动的位置,定义了初始位置,在200 * 200的坐标,
childRect = pygame.Rect(200, 200, 102, 126)while True:for event in pygame.event.get():if event.type == pygame.QUIT:sys.exit()else:# 通过时钟对象指定循环频率clock.tick(60)# 向右移动childRect.x += 1if childRect.x > 500:  # 这里的意思是当移动超过屏幕,让它重新到一个点,再次运动childRect.x = 0screen.blit(bg, (0, 0))screen.blit(child, childRect)  # 屏幕填充数据pygame.display.update()

看下运行效果吧
由于该站上传视频功能挂了,所以只能截图咯,大家莫怪

最后贴上源码:

# -*- coding:utf-8 -*-
# @Time:2022-2-22 17:24
# @Author:luoshao
# @FileName:swore.py
# @Software:PyCharm
import sysimport pygamepygame.init()# 设置屏幕宽高
screen = pygame.display.set_mode((500, 500))# 设置游戏名称
pygame.display.set_caption("小孩运动")# 设置游戏的背景图片
bg = pygame.image.load("static/back.png")
screen.blit(bg, (0, 0))# 设置小孩初始运动位置
child = pygame.image.load("static/child.png")
screen.blit(child, (200, 200))# # 设置运行速度
# speed = [1, 1]# 设置背景颜色
# White = 255, 255, 255# 创建时钟对象,可以控制游戏循环的频率
clock = pygame.time.Clock()# 记录小孩移动的位置
childRect = pygame.Rect(200, 200, 102, 126)while True:for event in pygame.event.get():if event.type == pygame.QUIT:sys.exit()else:# 通过时钟对象指定循环频率clock.tick(60)# 向右移动childRect.x += 1if childRect.x > 500:childRect.x = 0screen.blit(bg, (0, 0))screen.blit(child, childRect)pygame.display.update()

python创建一个简单的游戏相关推荐

  1. 用python做一个简单的游戏,用python写一个小游戏

    大家好,本文将围绕如何用python做一个简单的小游戏展开说明,python编写的入门简单小游戏是一个很多人都想弄明白的事情,想搞清楚用python做一个简单的游戏需要先了解以下几个事情. 1.Pyt ...

  2. 本文将引导你使用XNA Game Studio Express一步一步地创建一个简单的游戏

    本文将引导你使用XNA Game Studio Express一步一步地创建一个简单的游戏 第1步: 安装软件 第2步: 创建新项目 第3步: 查看代码 第4步: 加入一个精灵 第5步: 使精灵可以移 ...

  3. 用python 编写一个简单的游戏

    This blog will memory my work and process with the interesting skill. 用python 编写一个简单的游戏 这是一个非常简单的游戏, ...

  4. python怎么写游戏脚本_用PYTHON做一个简单的游戏脚本(基础,详细)

    引言 这段时间迷上了玩点点点的小游戏,但是某些重复的环节着实无聊,就想着能不能用PYTHON做一个游戏脚本,不过为了熟悉需要做脚本的各个模块,于是打算在4399上找一个比较像的游戏做个脚本练练手,后来 ...

  5. 用PYTHON做一个简单的游戏脚本(基础,详细)

    引言 这段时间迷上了玩点点点的小游戏,但是某些重复的环节着实无聊,就想着能不能用PYTHON做一个游戏脚本,不过为了熟悉需要做脚本的各个模块,于是打算在4399上找一个比较像的游戏做个脚本练练手,后来 ...

  6. python编辑游戏脚本_用PYTHON做一个简单的游戏脚本(基础,详细)

    引言 这段时间迷上了玩点点点的小游戏,但是某些重复的环节着实无聊,就想着能不能用PYTHON做一个游戏脚本,不过为了熟悉需要做脚本的各个模块,于是打算在4399上找一个比较像的游戏做个脚本练练手,后来 ...

  7. 【译】使用python创建一个简单的restful风格的webservice应用

    2019独角兽企业重金招聘Python工程师标准>>> 这是一个如何使用python快速构建简单restful风格webservice的应用教程. 1.分析rest路由规则 rest ...

  8. 如何集成Python代码和GUI来创建一个简单的游戏?

    您不需要集成任何内容.您可以使用pygame屏幕作为GUI. 公平警告:它没有内置功能,如按钮或弹出窗口.每次都需要硬编码. 通过集成,如果你的意思是python代码的结果应该显示在屏幕上,那么这将发 ...

  9. 用Python写一个简单的游戏脚本,让你成为游戏里面的大佬!

    想必大家都喜欢玩游戏吧,现在游戏市场是非常火爆和可观的,不少程序员都纷纷涌入游戏公司,我们学习python其实也可以作为写游戏脚本的,不清楚的小伙伴可以来看下了哦~ 以楚留香的电脑版为例,记录脚本的编 ...

  10. python创建一个简单的服务

    python -m http.server 8000 --bind 0.0.0.0 8000为端口 0.0.0.0允许远程访问

最新文章

  1. python取特定年份的数据_python,_怎样用python提取不同股票csv里特定时间段的数据,python - phpStudy...
  2. 22、《每天5分钟玩转Docker容器技术》学习--Flannel Network内部结构
  3. Gunicorn配置部分的翻译
  4. 在做自动化测试之前你需要知道的
  5. 一个figure存在多个legend:多行多列图例
  6. Python 中的 None 与真假
  7. php curl 请求失败,PHP CURL库之GET、POST数据大小限制导致请求失败解决方案
  8. OPENNLP——java的NLP工具
  9. ebaz s9 zynq linux中关于网络的一些小问题
  10. JS 输入框智能提示
  11. 顺通车间扫码出入库管理系统仓库扫码软件
  12. cubase计算机音乐,Cubase与Nuendo电脑音乐制作从新手到高手 (200例)
  13. npm安装express-art-template报错:no such file or directory, open 'D:xx\xx\package.json解决办法
  14. vue实现折叠组件-collapse
  15. Android 系统默认铃声修改 添加删除铃声
  16. 软件推荐:Typora -新手上路-夏凌玥
  17. 8.房价预测基础线性回归
  18. 联想小新使用Alt+insert快捷键
  19. 金胜维固态硬盘MK8115主控开卡成功教程
  20. mysql类似于excel的删除重复项_删除重复数据 excel去除重复数据 怎么筛选重复数据 excel重复数据合并...

热门文章

  1. android scheme 参数解析,Android 利用scheme协议进行跳转
  2. 电脑找回,怎么找回电脑上删除的文件_怎么找回电脑删除的文件-win7之家
  3. 移动MM 支付SDK遇到的问题
  4. amr java 播放_Java ME中.amr文件的语音或音频播放器
  5. SDUT-3337 计算长方体、四棱锥的表面积和体积(JAVA*)
  6. 洛谷 P4234 LCT + 排序 + 枚举
  7. 共赴开源路,共筑新丰碑!2022云栖大会龙蜥操作系统峰会圆满落幕!
  8. php转html为pdf后部分图片无法显示
  9. 网站变更服务器要重新备案吗,网站更换服务器要重新备案吗
  10. js pug 代码_pug模板引擎(原jade)