使用面向对象思想完成以下“猫狗大战”案例

猫狗⼤站,2个⻆⾊,猫和狗,游戏开始后,⽣成3个猫,3条狗,互相混战,猫被狗咬了会掉⾎,狗被猫抓了也掉⾎,狗和猫的攻击⼒,具备的功能都不⼀样。

类:猫

属性:猫:攻击⼒(打)、⽣命值(⾎)

⽅法:抓

类:狗;

属性:攻击⼒(咬)、⽣命值(⾎)

⽅法:咬

求出最终的结果

import random
#创建随机事件

class Cat(object):
#定义一个类
Cat_blood = 10
#攻击⼒(打)
cat_attack = 2
#⽣命值(⾎)
@classmethod
#使用@classmethod修饰器进行修饰方法
def zhua(cls):
print(“猫使出了爪子挠”)

class Dog(object):
dog_blood = 10
# 定义一个类
dog_attack = 2
# ⽣命值(⾎)
@classmethod
#使用@classmethod修饰器进行修饰方法
def yao(cls):
print(“狗使出了狗咬”)

A = 1
B = 0
C = 0
print("========================================================================")
print(“很久很久以前,喵星人和汪星人一直势不两立”)
print(“为了除掉对方,喵星人和汪星人大战一触即发”)

print("===汪星人还有三秒到达战场=")
print("===瞄星人还有三秒到达战场=")
print("=全军出击")
while A <= 3:
while True:
value = random.randint(1, 2)
if value == 2:
Cat.zhua()
Dog.dog_blood -= Cat.cat_attack
if Dog.dog_blood <= 0:
print(“喵星人获得胜利”)
print("====第%s场汪瞄大战结束" % A)
C += 1
Dog.dog_blood = 10
Cat.Cat_blood = 10
break
elif value == 1:
Dog.yao()
Cat.Cat_blood -= Dog.dog_attack
if Cat.Cat_blood <= 0:
print(“汪星人获得胜利”)
print("====第%s场汪瞄大战结束" % A)
C += 1
Dog.dog_blood = 10
Cat.Cat_blood = 10
break
A += 1
print(“最后汪瞄大战终于结束了”)
if B < C:
print(“喵星人获得最终胜利,喵星人万岁!”)
else:
print(“汪星人获得最终胜利,汪星人万岁万岁!”)

通过面向对象实现猫狗大战案例相关推荐

  1. python封装举例_Python面向对象封装操作案例详解

    本文实例讲述了Python面向对象封装操作.分享给大家供大家参考,具体如下: 目标 封装 小明爱跑步 存放家具 01. 封装 封装 是面向对象编程的一大特点 面向对象编程的 第一步 -- 将 属性 和 ...

  2. python 面向对象的封装_Python面向对象封装操作案例详解

    本文实例讲述了Python面向对象封装操作.分享给大家供大家参考,具体如下: 目标 封装 小明爱跑步 存放家具 01. 封装 封装 是面向对象编程的一大特点 面向对象编程的 第一步 ―― 将 属性 和 ...

  3. java基础语言+面向对象_经典案例——65个

    文章目录 x++和++ //调用类 1.用户在控制台输入 3 个数值,需要找出这 3 个数值中的最小值,要求使用 if 语句来实现.系统交互信息如图所示: 2// 正三角形 表达式 3算术运算代码: ...

  4. python的面向对象编程项目案例_python面向对象编程实例ants vs bees

    [实例简介] 本实例为用python语言编写,以python的面向对象.列表.局部变量等部分知识为基础,内容类似于popcap的植物大战僵尸的游戏项目 本实例为UC berkeley课程CS61A的p ...

  5. 《java入门第一季》之面向对象综合小案例

    需求: /*     教练和运动员案例         乒乓球运动员和篮球运动员.         乒乓球教练和篮球教练.         跟乒乓球相关的人员都需要学习英语.         分析,这 ...

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

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

  7. 思维导图:python面向对象(搞笑案例)

    关联阅读:可能是最全的 Python 面向对象入门教程了 手机版本 关联阅读:可能是最全的 Python 面向对象入门教程了 Python面向对象 面向对象入门 对象编程体验 一款简单自动运行小游戏模 ...

  8. java面向对象共享单车案例

    基本思路:1.创建公司数组,单车数组,在公司类里面写主程序,单车管理类里面写用户交互程序;2.接口制定增删改查规则,创建三家单车子公司类继承父类,父类作为实现类去实现接口(因本案例 三家公司增删改查方 ...

  9. 第九课 Java基础篇——面向对象(综合案例)

    1.文字版格斗游戏 格斗游戏,每个游戏角色的姓名,血量,都不相同,在选定人物的时候(〈new对象的时候),这些信息就应该被确定下来. Role.Java package cn.nwafu;import ...

最新文章

  1. php序列化数据无法反解析,PHP-反序列化数据不起作用
  2. 17原理图查找连接的管脚接口_第三节 主板原理图之标识的作用
  3. su user oracle does not exist,Linux下oracle用户无法su切换的异常【终极解决方案_生产环境亲测有效】...
  4. 数据分析---ipython使用
  5. virtualbox php mac,mac一体机通过Oracle VM VirtualBox装win8.1系统
  6. ps一点等于多少厘米_企业展厅设计关于展台你了解多少?
  7. 长春高中计算机考试时间安排,长春部分高中期末考试时间出炉!
  8. django报表系统_django使用echarts
  9. 取消chrome浏览器下input和textarea的默认样式
  10. bpe编码_缓冲池扩展(BPE)–如何工作?
  11. Linux性能分析工具汇总
  12. 火狐浏览器驱动_火狐浏览器开始支持比WebGL更简单的绘图API WebGPU
  13. SRTM 航天飞机雷达地形测绘使命
  14. 关于FTP服务器出现227 Entering Passive Mode错误的解决思路
  15. 基于AD603的AGC电路
  16. filter_var函数缺陷(原理+实践)
  17. 数学知识的一些常用公式
  18. 用latex的tikz宏包mindmap包绘制mindmap
  19. docker安全之容器资源控制 安全加固
  20. 读书笔记:Mysql实战45讲 (1-10讲)

热门文章

  1. BFC、IFC、GFC、FFC
  2. echarts map 实现酷炫地图
  3. 使用Mahout实现协同过滤
  4. CP2K入门教程分享
  5. 剑灵盛世服务器位置,剑灵全新大区西洛区 1月17日盛世开启!
  6. 优秀的软文标题应该怎么起才能吸引人?
  7. Hyperledger Fabric 超级账本 区块链技术 概述 优点
  8. 科幻大作明日边缘首曝预告
  9. NVIDIA GTC 明日如约举行,持续 15 天,三万人已报名
  10. 关于这些年做的 图片上传下载做的处理总结(including根据图片url上传文件)