利用python如何实现猫捉老鼠小游戏
作者:客长安 发布时间:2023-12-08 06:20:34
标签:python,猫捉老鼠,小游戏
python实现猫捉老鼠小游戏
首界面
开始游戏界面
然后键盘操作小老鼠上下左右移动,猫自己去追,当猫追上老鼠则游戏结束
这里用时3.2秒,最后将游戏时长与猫和老鼠都显示在主页面上
下面我把猫与老鼠的小图片也放上来供大家使用
以下是程序源代码
import turtle
import time
import random
def up():
jerry.setheading(90)
jerry.forward(20)
def down():
jerry.setheading(270)
jerry.forward(20)
def left():
jerry.setheading(180)
jerry.forward(20)
def right():
jerry.setheading(0)
jerry.forward(20)
playground=turtle.Screen()
playground.register_shape('tom.gif')
playground.register_shape('jerry.gif')
playground.onkey(up,'Up')
playground.onkey(down,'Down')
playground.onkey(left,'Left')
playground.onkey(right,'Right')
#监听
playground.listen()
writer=turtle.Turtle()
writer.color('brown')
writer.hideturtle()
writer.penup()
writer.home()
writer.write("Tom & JERRY",align='center',font=("Comic sans MS",50,"bold"))
writer.goto(0,-50)
writer.write("READY?3,2,1,GO",align='center',font=("Comic sans MS",20,"bold"))
time.sleep(3)
writer.clear()
tom=turtle.Turtle()
tom.shape('tom.gif')
tom.penup()
tom.goto(random.randint(-200,200),random.randint(-200,200))
tom.pendown()
tom.pensize(3)
tom.color('blue')
jerry=turtle.Turtle()
jerry.shape('jerry.gif')
jerry.speed(0)
jerry.penup()
jerry.goto(random.randint(-200,200),random.randint(-200,200))
jerry.color('brown')
start=time.time()
while True:
tom.setheading(tom.towards(jerry))
tom.forward(5)
if tom.distance(jerry)<10:
end=time.time()
playground.clear()
jerry.goto(0,0)
jerry.write("GAME OVER",align='center',font=("Comic sans MS",50,"bold"))
jerry.goto(0,-50)
jerry.write("YOU SURVIVED {:.1f} SECONDS".format(end-start),align='center',font=("Comic sans MS",20,"bold"))
tom.pu()
tom.goto(-50,-70)
tom.stamp()
jerry.pu()
jerry.goto(50,-70)
jerry.stamp()
break
来源:https://blog.csdn.net/qq_43592684/article/details/110468946


猜你喜欢
- 安装了python3之后,会有pip31. 使用pip install XXX新安装的库会放在这个目录下面python2.7/site-pa
- 在获取 IP 时,已经成功将各个网站的代理 IP 获取下来了,然后就需要一个检测模块来对所有的代理进行一轮轮的检测,检测可用就设置为满分,不
- “看图购”beta版今日起正式在淘宝网上线了,域名是:http://go.taobao.com。从此您也可以像翻看杂志一样翻看女装的图片了,
- 在编写JavaScript程序时往往需要检测某一变量是否存在,这是一件非常简单的工作,但如果不细心也会遇到一些问题。主要有一些几点: 1、普
- 本文实例讲述了Django开发的简易留言板。分享给大家供大家参考,具体如下:Django在线留言板小练习环境ubuntu16.04 + py
- SELECT sch.name + '.' + t.name AS [Table Name],
- IE8正式版已经发布了。本篇文章不会非常扯蛋地去进行什么评测,然后给出什么“Chrome运行JavaScript能力是IE8的15倍”、什么
- 本文介绍了网页运行代码框(runCode), 复制代码框(copyCode), 保存代码框(saveCode),的实现方法。javascri
- 1.go项目在window下编译简易打包1).在windows下直接编译生成main.exe文件在项目main.go同级目录下执行以下命令g
- 直接贴代码import subprocessdef get_system_stats(): # 通过 shell
- 同步的方法基本与多线程相同。1) Lock当多个进程需要访问共享资源的时候,Lock可以用来避免访问的冲突。import multiproc
- 各种请求方式pip3 install requests>>> import requests>>> r
- 1.在线定制下载echartshttps://echarts.apache.org/zh/builder.html2.创建一个django项
- 在安装nodejs时候,有时候我们会把它安装在d盘或别的
- 搞了一个DIV+CSS菜单,兼容Firefox,分享给大家,大家一齐学习 <!DOCTYPE html PUBLIC "-/
- 正文开始if name == "main":可以看成是python程序的入口,就像java中的main()方法,但不完全
- NumPyNumPy是一个用于科学计算和数据分析的Python库,也是机器学习的支柱。可以说NumPy奠定了Python在机器学习中的地位。
- 涉及概念并发安全Map分段锁sync.MapCAS ( Compare And Swap )双检查分断锁type SimpleCache s
- 什么是聚类算法聚类是一种机器学习技术,它涉及到数据点的分组。给定一组数据点,我们可以使用聚类算法将每个数据点划分为一个特定的组。理论上,同一
- 下列语句部分是Mssql语句,不可以在access中使用。SQL分类:DDL—数据定义语言(CREATE,ALTER,DROP,DECLAR