欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python实现猫捉老鼠小游戏

程序员文章站 2022-03-27 13:59:09
python实现猫捉老鼠小游戏首界面开始游戏界面然后键盘操作小老鼠上下左右移动,猫自己去追,当猫追上老鼠则游戏结束这里用时3.2秒,最后将游戏时长与猫和老鼠都显示在主页面上下面我把猫与老鼠的小图片也放上来供大家使用以下是程序源代码import turtleimport timeimport randomdef up(): jerry.setheading(90) jerry.forward(20)def down(): jerry.setheading...

python实现猫捉老鼠小游戏

首界面python实现猫捉老鼠小游戏
开始游戏界面
python实现猫捉老鼠小游戏
然后键盘操作小老鼠上下左右移动,猫自己去追,当猫追上老鼠则游戏结束
python实现猫捉老鼠小游戏
这里用时3.2秒,最后将游戏时长与猫和老鼠都显示在主页面上
下面我把猫与老鼠的小图片也放上来供大家使用
python实现猫捉老鼠小游戏
python实现猫捉老鼠小游戏
以下是程序源代码

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