上代码,代码中有解释

class Gun :  #定义枪类def __init__(self, model):  #枪的属性有名字、初始子弹数量self.model = modelself.bullet_count = 0def add_bullet(self, count):  #方法:添加子弹self.bullet_count += countdef shoot(self, number):  #方法:射击if self.bullet_count <= 15 :  #判断子弹都不够(假设15发以内就不够)print('%s子弹不够了' %(self.model))return                    #如果不够就直接返回不再执行self.bullet_count -= number   #如果够就射击(每次射击的子弹数目由外部给入)class Soldier :       #定义士兵类def __init__(self, name):  #士兵的属性有名字、是否有枪self.name = nameself.gun = None   #刚开始定义士兵没枪def fire(self):     #方法:开火if self.gun is None :   #先判断士兵是否有枪(用is判断非数值的属性)print('%s 没有枪!' %(self.name))returnself.gun.add_bullet(60)   #添加子弹,调用枪的添加子弹方法print('%s使用%s射击!!' % (self.name, self.gun.model))  #给出命令self.gun.shoot(15)  #射击,调用枪类的射击方法print('还剩%.f发子弹' % (self.gun.bullet_count))  #告诉我们还剩多少发子弹UZI = Gun('UZI')  #先来把枪
soldier = Soldier('hero')  #再来个兵
soldier.gun = UZI   #把枪给兵,如果没给就运行,程序会提示没有枪
soldier.fire()  #调用开火方法

执行结果为

hero使用UZI射击!!
还剩45发子弹

python 【面向对象实例2】相关推荐

  1. python面向对象实例王者荣耀_大牛程序员利用Python开发王者荣耀带妹神器,一路直奔上王者...

    王者荣耀 -很火的手游-简直老少通吃-令人发指-虽然操作简单-但为什么你还是会被虐, 其实 是有技巧的--本文Python大神带你研究王者荣耀各类英雄的出装小技巧,让你成为大神般的存在 前期准备 环境 ...

  2. python面向对象实例王者荣耀_Python设计王者荣耀人物结构(63)*

    今天我们作为游戏程序员,设计王者荣耀人物结构.王者荣耀,玩家可以选择很多英雄,每种英雄有很多属性,请用我们学过的list和字典,将这些内容表达出来,并用循环遍历你创造的英雄,并打印出他们的属性出来. ...

  3. python面向对象实例王者荣耀_PYTHON-面向对象-练习-王者荣耀 对砍游戏

    # 王者荣耀 对砍游戏 # 两个英雄可以对砍 如果血量小于等于0 就GG # 所需的对象 # 英雄对象 """ 亚瑟 属性 类型 血量 名称 技能 Q 跳起来给你一刀 伤 ...

  4. Python|面向对象实例:银行卡类

    # 编写一个银行卡类 # 属性:银行名称 卡号.密码.姓名.余额 #方法:登录,存款class Card():def __init__(self,cnum,cpwd,cname,cbalance):s ...

  5. python面向对象实例王者荣耀_Python3 类与对象之王者荣耀对战小游戏

    王者荣耀对战小游戏 # 定义英雄: 亚瑟 class Arthur: hero_type = 'Tank' def __init__(self, attack_value=164, armor=98, ...

  6. python面向对象生动讲解_Python面向对象语法精讲

    本专题的内容结构: 第一部分主要是:面向对象基础 第二部分主要是:面向对象进阶 第一部分的结构: unit1:面向对象编程模式: (1),面向对象编程思想 (2),面向对象的三个特征 (3),Pyth ...

  7. Python面向对象-概念、类、实例

    Python面向对象-概念.类.实例 OOP--Object Oriented Programming,面向对象编程,是一种程序设计思想.该思想将对象作为程序的基本单元,一个对象包含了数据和操作数据的 ...

  8. python的实例属性和静态属性_Python面向对象之静态属性、类方法与静态方法分析...

    本文实例讲述了Python面向对象之静态属性.类方法与静态方法.分享给大家供大家参考,具体如下: 1. 静态属性:在函数前加@property,将函数逻辑"封装"成数据属性,外部直 ...

  9. python封装功能讲解_python学习28——面向对象实例讲解与封装

    面向对象实例讲解 classSchool: school_name= 'OLDBOY' def __init__(self, nickname, addr): self.nickname=nickna ...

  10. [转载] python面向对象编程实例

    参考链接: Python面向对象编程 案例介绍 本案例设计的是:为购置的新房添置家具,在本案例中,我们需要给出指定的房屋和面积,在为其添置家具的过程中,各家具的面积之和不能超过房屋面积的总和.房屋及家 ...

最新文章

  1. 超强、超详细Redis入门教程【转】
  2. linux 内核线程与普通进程的区别
  3. 如何使用 abp 创建 module 并应用单独的数据库迁移
  4. IO模型(epoll)--详解-03
  5. SDOI2017R1(姑且是游记)
  6. Java编写编译native方法
  7. ajax主要有哪些方法,ajax的使用方法和原理,ajax包括哪些技术呢
  8. 广东技能大赛软件测试项目,我校喜获2019年全国职业院校技能大赛软件测试赛项二等奖...
  9. 【2019南京icpc网络赛 I】Washing clothes【李超树】
  10. android 8.0 无法接受到静态广播
  11. 百度网盘限速解决方案
  12. 足球类游戏球场风云前端项目代码
  13. openwrt折腾记3-开通ipv6(二级路由)
  14. 安卓相机camera2开发知识点
  15. 基于GoogLeNet实现鸟类识别任务
  16. Node中的_dirname和_filename
  17. redis实现简单的动态密码
  18. win10设置软件开机启动
  19. 简单使用GreenDao框架
  20. 大小写转化php,怎样用PHP做出人名币大小写的方法转换

热门文章

  1. 在.NET5 中读取Excel文件,评估下参加神秘献祭会的几位子民
  2. 阿里云电脑无影云桌面收费标准(CPU内存/云盘/互联网访问带宽)
  3. 阿里云服务器访问windows下网页(内网穿透)
  4. LOAM系列——LeGO-LOAM配置、安装、问题解决及VLP16测试效果(完结版)
  5. CCIE理论-第十二篇-IPV6-NDP协议
  6. 成都盛铭轩:商品标题怎么写
  7. MT6737/MT6737T/MT6737M处理器功能介绍,MT6737芯片资料下载
  8. 微信文件传输助手文件存储位置问题
  9. aix的ps命令详解
  10. 用 Python 编程,假设一年期定期利率为 3.25%,计算一下需要过多少年,一万元的一年定期存款连本带息能翻番?