class Person:
def play(self, tools): # 通过参数的传递把另外一个类的对象传递进来
tools.run()
print("很开心, 我能玩儿游戏了") #
class Computer:
def run(self):
print("电脑开机. 可以运行")
#
class Phone:
def run(self):
print("手机开机, 可以运行") c = Computer()
phone = Phone() p = Person()
p.play(phone) # 写一个植物大战僵尸
# 1. 植物
# 打僵尸. 僵尸掉血
# 2. 僵尸
# 吃植物. 植物掉血 class Plant:
def __init__(self, name, hp, ad): # 200
self.name = name
self.hp = hp
self.ad = ad def attack(self, js):
print("植物攻击僵尸")
js.hp -= self.ad
print(f"僵尸掉血{self.ad}, 还剩下{js.hp}") class JiangShi:
def __init__(self, name, hp, ad): # 1000 800
self.name = name
self.hp = hp
self.ad = ad def attack(self, zw):
print("僵尸咬植物")
zw.hp -= self.ad
print(f"植物掉血{self.ad}, 还剩{zw.hp}") # 植物
wd = Plant("歪脖子豌豆", 10, 20)
# 僵尸
js = JiangShi("铁桶僵尸", 200, 1)
wd.attack(js)
wd.attack(js)
wd.attack(js)
wd.attack(js)
wd.attack(js) js.attack(wd)
js.attack(wd)
js.attack(wd)
js.attack(wd)

  

最新文章

  1. java笔记——Java关键字static、final使用小结
  2. form表单提交路径action="" 时的一种特殊情况
  3. judge remote file exist
  4. ssh authentication魔鬼细节--.ssh文件夹权限
  5. Java XML解析工具 dom4j介绍及使用实例
  6. php启动时候提示PHP startup的解决方法
  7. 如何在Mac下使用TF/SD 卡制作Exynos 4412 u-boot启动盘
  8. Hadoop fs 命令详解
  9. linux expr命令参数及用法详解
  10. websocket采用tomcat方式,IOC类对象无法注入的解决方案
  11. [原创]WB Android客户端架构总结:发WB工作队列设计
  12. Django积木块一——验证码
  13. ASP.NET Web API(MVC API)
  14. Android 开发添加控件事件的三种方式
  15. Spring Boot 连接池
  16. linux ping 命令解析
  17. 架构师养成记--16.disruptor并发框架中RingBuffer的使用
  18. 使用UEFI+GPT模式安装Windows
  19. PyCharm创建虚拟环境 和 TVTK库的安装
  20. INDEX SKIP SCAN适用场景

热门文章

  1. 配置ssh免密登录
  2. java getInstance()的使用
  3. vector底层实现
  4. WDA基础十二:FREE PROGRAM SH (WDA TREE)
  5. C语言实现哈夫曼编码(最小堆,二叉树)
  6. git status 查看当前修改文件
  7. Django之WSGI 和MVC/MTV
  8. jquery attr方法获取input的checked属性问题
  9. mybatis标签之——<trim>及 <foreach collection>
  10. api资源