博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏。

目录

  • 一、背景
  • 二、猫狗大战
  • 三、参考
  • 四、总结

一、背景

  Python 是一门易于学习、功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面向对象编程。Python 优雅的语法和动态类型以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的理想语言。下面我们来介绍一下python的类的典型案例。

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。”
https://www.cbedai.net/xander


二、猫狗大战

【例】 编写程序,模拟猫狗大战,要求:
(1)可创建多个猫和狗的对象,并初始化每只猫和狗(包括昵称、品种、攻击力、生命值等属性)。
(2)猫可以攻击狗,狗的生命值会根据猫的攻击力而下降;同理狗可以攻击猫,猫的生命值会根据狗的攻击力而下降。
(3)猫和狗可以通过吃来增加自身的生命值。
(4)当生命值小于等于0时,表示已被对方杀死。

  • 第一步,定义一个猫类。
#定义一个猫类
class Cat:role = 'cat'           #猫的角色属性都是猫
#构造方法初始化猫def __init__(self, name, breed, aggressivity, life_value):self.name = name        #每一只猫都有自己的昵称self.breed = breed     #每一只猫都有自己的品种self.aggressivity = aggressivity   #每一只猫都有自己的攻击力self.life_value = life_value      #每一只猫都有自己的生命值
#定义猫攻击狗的方法def attack(self,dog):dog.life_value -= self.aggressivity #狗的生命值会根据猫的攻击力而下降
#定义增长生命值的方法def eat(self):self.life_value += 50
#定义判断是否死亡的方法def die(self):if self.life_value <= 0:      #如果生命值小于等于0表示已被对方杀死print(self.name,'已被杀死!')else:print(self.name,'的生命值还有',self.life_value)
  • 第一步,定义一个狗类。
#定义一个狗类
class Dog:  role = 'dog'         #狗的角色属性都是狗
#构造方法初始化狗def __init__(self, name, breed, aggressivity, life_value):self.name = name        #每一只狗都有自己的昵称self.breed = breed     #每一只狗都有自己的品种self.aggressivity = aggressivity   #每一只狗都有自己的攻击力self.life_value = life_value      #每一只狗都有自己的生命值
#定义狗攻击猫的方法def bite(self,cat):cat.life_value -= self.aggressivity   #猫的生命值会根据狗的攻击力而下降
#定义增长生命值的方法def eat(self):self.life_value += 30
#定义判断是否死亡的方法def die(self):if self.life_value <= 0:      #如果生命值小于等于0表示已被对方杀死print(self.name,'已被杀死!')else:print(self.name,'的生命值还有',self.life_value)
  • 第三步,创建实例。
#创建实例
cat_1 = Cat('Mily','波斯猫',30,1500)  #创造了一只实实在在的猫
dog_1 = Dog('Lucky','哈士奇',50,900)  #创造了一只实实在在的狗
cat_1.die()             #输出猫的当前状态
dog_1.die()         #输出狗的当前状态
print('------开始战斗-----')
cat_1.attack(dog_1)         #猫攻击狗一次
dog_1.bite(cat_1)           #狗攻击猫一次
cat_1.die()             #输出猫的当前状态
dog_1.die()         #输出狗的当前状态
for i in range(29):         #循环实现,猫攻击狗29次cat_1.attack(dog_1)
dog_1.die()         #输出狗的当前状态
cat_1.eat()             猫吃东西一次
cat_1.die()             #输出猫的当前状态

运行结果如下,大家可以参考前面知识点,复制代码到pycharm上,去理解代码。


三、参考

1、廖雪峰的官网
2、python官网
3、Python编程案例教程


四、总结

  以上就是就是关于Python类的典型案例,可以参考一下,觉得不错的话,欢迎点赞、收藏、在看,欢迎微信搜索关注java基础笔记,后面会不断更新相关知识,大家一起进步。

python之类的典型案例相关推荐

  1. python列表之典型案例

    博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞,收藏. ...

  2. Python输入账号密码判断是否正确并输出,典型案例-百钱买百鸡的两个程序代码

    目录 前 一.输入账号密码判断是否正确并输出 1.实现的功能 2.代码程序 3.运行截图 二.典型案例-百钱买百鸡 1.实现的功能 2.代码程序 3.运行截图 前言 1.因多重原因,本博文由两个程序代 ...

  3. Python输入除数被除数,求商以及典型案例-猜拳游戏的两个程序代码

    目录 前言 一.输入除数被除数,求商 1.实现的功能 2.代码程序 3.运行截图 二.典型案例-猜拳游戏 1.实现的功能 2.代码程序 3.运行截图 前言 1.因多重原因,本博文由两个程序代码部分组成 ...

  4. AliOS Things 维测典型案例分析 —— 内存泄漏

    维测典型案例分析1 -- 内存泄漏 在系统运行的过程中,内存泄漏是较为常见但是很难复现的现象,一般的内存泄漏点都是比较隐蔽的,每次几十个字节的泄漏,往往需要压测很久才能复现问题.本节案例分析,我们从一 ...

  5. 下篇 | 大数据公司挖掘数据价值的49个典型案例(值得收藏)

    紧接着上篇中的25项案例介绍剩余其他的大数据公司挖掘数据价值的典型案例... 26. 众趣的行为辩析 众趣是国内第一家社交媒体数据管理平台,目前国内主要的社交开放平台在用户数据的开放性方面仍比较保守, ...

  6. 遥感云大数据在灾害、水体与湿地领域典型案例实践及GPT模型

    近年来遥感技术得到了突飞猛进的发展,航天.航空.临近空间等多遥感平台不断增加,数据的空间.时间.光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征.遥感大数据的出现为相关研究提供了前所未 ...

  7. AI+Science系列(二):国内首个基于AI框架的CFD工具组件!赛桨v1.0 Beta API介绍以及典型案例分享!

    AI for Science被广泛认为是下一代科研范式,可以有效处理多维度.多模态.多场景下的模拟和真实数据,解决复杂推演计算问题,加速新科学问题发现[1] .百度飞桨科学计算工具组件赛桨Paddle ...

  8. 提取某一个镇的行政边界_池店镇消防安全违法典型案例通报(一)

    8月以来,池店镇深入开展消防安全整治攻坚行动,重拳出击,铁腕整治消防隐患,治安拘留28人,行政罚款25家.其中,属违反出租屋消防安全的,拘留25人,罚款5家:违反九小场所店面消防安全的,拘留2人,罚款 ...

  9. 国家自然科学基金委公布生命科学部四类科学问题典型案例

    明确基于四类科学问题属性的资助导向是自然科学基金委确立的三大改革任务之一.为使广大申请人准确理解和把握四类科学问题属性的具体内涵,根据科学基金深化改革工作要求,自然科学基金委编制了四类科学问题属性典型 ...

最新文章

  1. php基础+jquery基础
  2. 事件源event.target
  3. golang 函数指针相等比较
  4. Android Studio 提示与技巧(官方文档翻译)
  5. Crawler:基于urllib库获取cn-proxy代理的IP地址
  6. 我看objective-C --不要把objC当做c/c++的超集
  7. DI(destination imagination)活动
  8. SaCa DataViz 企业版 | 高性能大数据分析引擎
  9. 机器学习基于语义特征的情感分析
  10. eclipse中要让一个 Java 源文件打开时编码格式为 UTF-8
  11. android .9图片如何引用,Android调用相机拍照并返回路径和调用系统图库选择图片...
  12. 苹果mac能安装计算机题库吗,苹果电脑能装windows系统吗_苹果电脑安装windows系统的方法...
  13. linux go语言运行环境,linux下怎么安装go语言环境
  14. metasfresh 集成 yetiforce crm
  15. 微信小程序 转发 封装
  16. 什么是表达能力?如何提高表达能力?
  17. PDF写出:使用fop输出为pdf格式文件的Demo
  18. 使用AccessibilityService(无障碍服务)自动完成手机设置功能
  19. java web简单的网上名片管理系统
  20. java计算三角形面积和周长

热门文章

  1. Standard ML快餐教程(1) - 初识
  2. JS获取当前时间并把时间赋值给input表单
  3. 2020 4 光模块
  4. 矩阵运算中一个圆圈中间一个乘号的运算是什么
  5. redis应用场景及实例
  6. 最新版(2021年1月)知乎x-zse-86 2.0版本加密破解分析 爬虫 破解反爬思路
  7. Unity 灯光Shader
  8. Mybatis笔记本(3)
  9. 第四章 数据传输与输入输出接口
  10. 南充市住房公积金领取流程