#讲道理乌龟吃鱼的嘛?

先上代码,虽然感觉很多地方可以优化

import random
import timeclass Tortoise:x = random.randint(0,10)y = random.randint(0,10)def __init__(self):self.life = 100print('Tortoise: (%d,%d)'%(self.x,self.y))print('life : %d'%(self.life))def move(self):step = random.randint(1,2)direction = random.randint(-1,2)self.life -= stepif direction == 2:if self.x + step - 10 == 1:self.x = 9elif self.x + step - 10 == 2:self.x = 8else:self.x += stepif direction == 1:if self.y + step - 10 == 1:self.y = 9elif self.y + step - 10 == 2:self.y = 8else:self.y += stepif direction == 0:if self.x - step == -1:self.x = 1elif self.x - step  == -2:self.x = 2else:self.x -= stepif direction == -1:if self.y - step == -1:self.y = 1                 elif self.y - step == -2:self.y = 2                 else:self.y -= stepreturn (self.x,self.y)class Fish:def __init__(self,name):self.name = nameself.x = random.randint(0,10)self.y = random.randint(0,10)print('%s: (%d,%d)'%(name,self.x,self.y))def move(self):direction = random.randint(-1,2)if direction == 2:if self.x + 1 - 10 == 1:self.x = 9else:self.x += 1if direction == 1:if self.y + 1 - 10 == 1:self.y = 9else:self.y += 1if direction == 0:if self.x - 1 == -1:self.x = 1else:self.x -= 1 if direction == -1:if self.y - 1 == -1:self.y = 1else:self.y -= 1return (self.x,self.y)def game():start_time = time.time()fishlist = list()fishObj = list()for i in range(1,11):name = 'fish' + str(i)fishlist.append(name)wugui = Tortoise()for fish in fishlist:fish = Fish(fish)fishObj.append(fish)while True:(x,y) = wugui.move()for fish in fishObj:(a,b) = fish.move()if (a,b) == (x,y) and wugui.life > 0:fishObj.remove(fish)print('%s鱼被吃了'%(fish.name))if wugui.life > 80:wugui.life = 100else:wugui.life += 20if wugui.life == 0:print("乌龟累死了")breakelif fishObj == []:print('没有鱼了')breakend_time = time.time()print('%d只鱼存活成功'%(len(fishObj)))print('took %f second'%(end_time - start_time))game()

运行结果如下:

心得体会:
问题:有的时候运行会卡住类似这样

目前还不知道什么原因导致。

掌握了random中randomint 与 choice 函数

在运动的方向选择上可以进一步优化

Python-小游戏-乌龟吃鱼相关推荐

  1. 【毕业设计】 python小游戏设计 -吃豆人小游戏

    文章目录 0 前言 1 课题背景 2 实现效果 3 Pygame介绍 4 原理和实现 4.1 环境配置 4.3 创建游戏类 4.3 游戏地图 4.4 游戏主循环 5 最后 0 前言

  2. python小游戏毕设 吃豆人小游戏设计与实现 (源码)

    文章目录 0 项目简介 1 游戏介绍 2 实现效果 3 Pygame介绍 4 原理和实现 4.1 环境配置 4.3 创建游戏类 4.3 游戏地图 4.4 游戏主循环 5 最后 0 项目简介

  3. 树莓派开箱+上手python小游戏

    树莓派开箱&上手python小游戏 树莓派开箱&上手python小游戏 安装所需设备 烧录系统 使用NOOBS方式烧录失败 下载官方系统镜像文件烧录成功 配置WiFi和SSH 一.Wi ...

  4. 面向对象编程项目案例(栈与队列封装和乌龟吃鱼游戏)

    一.Pygame相关介绍 1.Pygame是跨平台Python模块,专为电子游戏设计,包含图像.声音.允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚.Pygame常用模块 2.一个游 ...

  5. python小鱼_Python面向对象练习-通过pygame改良乌龟吃鱼

    先看看最后效果 图片的话是从网上小鱼儿那个案例里面拿的,实现的功能如下: 是通过方向键操作乌龟,进行吃鱼 吃鱼的时候根据乌龟的x,y坐标和鱼的x,y进行检测,在碰撞区域则干掉这条鱼 背景音乐和吃鱼音乐 ...

  6. Python小游戏:乌龟画图

    /*python小实践,适合入门者练习主要就是用turtle简单的画图*/#draw.py import turtle t=turtle.Pen() #创建一支画笔,注意"P"为大 ...

  7. python小游戏之《小猫抓鱼》

    欢迎加入我们卧虎藏龙的python讨论qq群:729683466 ●导 语 ● 这次带大家做一个新的游戏 小猫抓鱼 其实,很久之前公众号发过一个游戏 接水果 当然,这个游戏颜值更高. 也更好玩 代码及 ...

  8. 用pygame做一个简单的python小游戏---贪吃蛇

    用pygame做一个简单的python小游戏-贪吃蛇 贪吃蛇游戏博客链接:(方法一样,语言不一样) c++贪吃蛇:https://blog.csdn.net/weixin_46791942/artic ...

  9. 边玩边学,13个 Python 小游戏真有趣啊(含源码)

    经常听到有朋友说,学习编程是一件非常枯燥无味的事情.其实,大家有没有认真想过,可能是我们的学习方法不对? 比方说,你有没有想过,可以通过打游戏来学编程? 今天我想跟大家分享几个Python小游戏,教你 ...

最新文章

  1. 一次订单号重复引起的事故,可把我给坑惨了!
  2. AI芯片爆火 但初创公司场景落地难
  3. 一个软件公司需要多少前端_制作一个小程序商城需要多少钱?开发小程序公司哪家强?...
  4. 在linux命令下如何访问一个url?
  5. SQL Server中常用的快捷键
  6. windows 只能同时 启动一个_一个u盘能否刻入win 7、win10等多个系统?该怎么做?...
  7. 349. 两个数组的交集 golang
  8. 使用composer下载依赖包下载失败的解决方法
  9. CSRF 跨站请求伪造 为什么b网站请求a网站的地址能带上a网站的cookie
  10. logback日志pattern_[SpringBoot2.X]28- Spring Boot 的日志管理
  11. u盘安装centos7.0
  12. abcde依次进入一个队列_体育老师必看——详解队列队形及口令(2)
  13. [30期] 第一个项目总结-—数码黑店在这一年开张
  14. 电路板故障测试仪GR4080软件,电路板故障检测仪
  15. go 变量与json相互转换
  16. Bhuman应用篇——带球及踢球
  17. Centos7 IOS镜像包下载
  18. 实验报告五201521460014 综合渗透
  19. cors实现请求跨域
  20. BB10 处理NFC事件

热门文章

  1. 这是广告clearview ai用来将您的脸卖给警察的广告
  2. 微信小程序接入第三方接口
  3. 世间什么才是最珍贵的?
  4. 字节跳动取消大小周;淘宝、支付宝等阿里系App取消开屏广告;Python 3.10 beta 4发布
  5. Overload vs Override
  6. 普及一下硬件及硬件编程的问题,适合初学者,对于硬件高级程序员可供参考
  7. VSCode 壁纸插件 背景播放视频插件
  8. 前端经典面经--助你金九银十面试无烦恼
  9. word2vec的词向量神经网络的embedding层的关系
  10. 爬虫学习:爬取京东图书