用键盘方向键来控制老鼠,使其在猫的正前方

import turtle

import time

boxsize=200

caught=False

score=0

#定义响应键盘消息的函数

def up():

mouse.forward(10)

checkbound()

def left():

mouse.left(45)

def right():

mouse.right(45)

def back():

mouse.backward(10)

checkbound()

def quitTurtles():

window.bye()

#检测边界

def checkbound():

global boxsize #使用外部变量

if mouse.xcor() > boxsize:

mouse.goto(boxsize,mouse.ycor())

if mouse.xcor() < -boxsize:

mouse.goto(-boxsize,mouse.ycor())

if mouse.ycor() > boxsize:

mouse.goto(mouse.xcor(),boxsize)

if mouse.ycor() > -boxsize:

mouse.goto(mouse.xcor(),-boxsize)

#设置屏幕

window=turtle.Screen()

mouse=turtle.Turtle()

cat=turtle.Turtle()

mouse.penup()

mouse.penup()

mouse.goto(100,100)

#添加对键盘消息的监听

window.onkeypress(up,"Up")

window.onkeypress(left,"Left")

window.onkeypress(right,"Right")

window.onkeypress(back,"Down")

window.onkeypress(quitTurtles,"Escape")

#定义难度系数

difficulty=window.numinput("Difficulty","Enter a difficulty from easy (1),for hard (5)",minval=1,maxval=5)

window.listen()

#主循环

while not caught:

cat.setheading(cat.towards(mouse))

cat.forward(8+difficulty)

score=score+1

if cat.distance(mouse) < 5: #猫和老鼠的距离小于5个像素,表示老鼠被毛抓住了

caught=True

time.sleep(0.2-(0.01*difficulty))

window.textinput("Game Over","Well Done.You scored: "+str(score*difficulty))

window.bye()

运行效果:

python画猫和老鼠代码_猫捉老鼠游戏(Python)相关推荐

  1. python turtle 画老鼠,python用turtle制作一个猫捉老鼠游戏

    CSDN网友写的猫捉老鼠游戏代码 看着不错 大家借鉴一下 import turtle import time import random def up(): jerry.setheading(90) ...

  2. 用python画熊猫代码_带有大熊猫数据帧的python代码是s

    我有下面的代码和算法是相当缓慢的. 我尝试使用预分配与numpy(1.14.3),并将pandas(0.23.0)中的字符串列转换为category以加快代码的速度,但仍然非常慢.在 我的df是一个大 ...

  3. pandas 根据单号分类_由 “猫捉老鼠”游戏联想的用户分类问题

    一.说在最前  用户识别,用户分类,精准营销-这是咱们业务人员常常念叨的话.底层逻辑为无论任何营销目的,在营销手段上,越针对某一细化群体,达成目的的概率也就会越大.那今天就来和大家说道说道用户识别/分 ...

  4. 用python画机器猫代码_如何用Python画一只机器猫?| 原力计划

    原标题:如何用Python画一只机器猫?| 原力计划 作者 | 人邮异步社区 责编 | 胡巍巍 出品 | CSDN博客 自信心是成功的源泉,对刚入门编程行业的初级程序员来说,多敲代码多做项目就是构建自 ...

  5. 怎么用python画花朵代码_怎么用python画花朵

    怎么用python画花朵?下面给大家讲解一下具体步骤: 第一步,打开菜单栏,输入idle,打开shell. 第二步,新建一个文件,并命名. 第三步,导入turtle模块,创建一个新窗口用于绘图,再创建 ...

  6. python画兔子代码_【后端开发】如何用Python画一只兔子——turtle库circle()画圆函数的详细用法介绍...

    周末学习了一下turtle库的基本函数,试着画了一只大耳朵小兔子,灵感来源是jellycat邦尼兔.turtle库中circle()函数用来画弧,但和通常先确定原点,再根据半径.夹角画弧的方法有所不同 ...

  7. 如何用python画爱心代码_用 python 画爱心代码讲解

    学计算机的男生发这个给我看是什么意思?​www.zhihu.com 原理其实挺简单的. 代码网上也有. 最难的部分前人都告诉我们了, 心形可画. 要自己推导通过泰勒各种扭也可以. 通过肉眼扭我感觉也不 ...

  8. python大鱼吃小鱼程序代码_最近跟导师学Python,熬夜弄了两个晚上写出来个大鱼吃小鱼游戏!...

    在之前学习过pygame的基本知识了,现在该做个小游戏实战一下检测一下自己的所学.小伙伴们需要Python书籍.视频资料,游戏和游戏源码获取可以加群707548179就可以领取 今天用Python来做 ...

  9. python画大学教室_开学季,用Python画大学教室座位神分区图,你中枪了吗?

    这就用Python给大家画这幅有趣的神分区图,看看是不是跟你的情况一样呢? 基本思路:我们将画布分成若干子画布,这些子画布构成绘图区域,在这些绘图区域上分别绘制图形,这就让我们想到函数subplot2 ...

最新文章

  1. php两个按钮左右怎么做,css布局两个button在同父标签中左右两侧分布的方法
  2. EF跨库查询,DataBaseFirst下的解决方案
  3. Uva592 Island of Logic
  4. 构建根文件系统之busybox(一)浅析
  5. 比特币早期投资家:没有人能够阻止其发展 TechWeb 09-27 09:10 凤凰科技讯 据CNBC网站北京时间9月27日报道,风险投资家、“Social+Capital”基金创始人Chamath
  6. SQLServer删除登录帐户
  7. 020303阶段三 I/O复用 select和epoll的文件描述符管理
  8. php类如何变为静态调用,PHP类中静态方法如何调用非静态方法?_后端开发
  9. 养成10个优秀的习惯
  10. Spring Boot Maven 打包可执行Jar文件!
  11. asp.net C#绘制太极图
  12. 蓝桥杯 BASIC-19 基础练习 完美的代价
  13. PHP+MYSQL 出现乱码的解决方法
  14. CCS各个版本软件的下载及安装说明(内涵有详细获取安装包以及步骤奥)
  15. RS232串口线接法与线芯引脚定义
  16. Java使用纯真IP库获取IP对应省份和城市
  17. 8T磁盘阵列文件存储服务器 威联通,NAS私有云老司机折腾体验记 篇八:QNAP 威联通TR-004磁盘阵列外接盒使用教程...
  18. 5-46 新浪微博热门话题 (30分)
  19. 使用echarts完成中国省市区县镇地图展示
  20. 【STM32】一次F105 USB OTG驱动填坑记录

热门文章

  1. 孤立的知识是没有用途的,融汇贯通、学以致用才是正道
  2. 2010 年 博文汇总
  3. android聊天气泡
  4. excel-counta
  5. RMAN 系列(七) ---- RMAN 维护
  6. html+css+js实现文本编辑器
  7. Lesson 16 Mary had a little lamb 内容鉴赏
  8. 微时代的微营销利器有哪些
  9. 跨平台应用开发进阶(四十五)uni-app集成企微客服实战
  10. [ohasd(61322)]CRS-0715:Oracle High Availability Service has timed out waiting for init.ohasd to be..