1.士兵瑞恩有一把AK47
2.士兵可以开火(士兵开火扣动的是扳机)
3.枪 能够 发射子弹(把子弹发射出去)
4.枪 能够 装填子弹 --增加子弹的数量
class Gun:
def __init__(self,model):
# 枪的型号
self.model = model
# 子弹的数量(调用增加子弹的方法来增加子弹数量)
self.bullet_count = 0
def add_bullet(self,count):
self.bullet_count += count
def shoot(self):
# 判断子弹数量
if self.bullet_count <= 0:
print('[%s] 没有子弹了...' %(self.model))
return
# 发射子弹 子弹数量变化
self.bullet_count -= 1
print('[%s] tututu~ [%d]' %(self.model,self.bullet_count))
class Soldier:
def __init__(self,name):
self.name = name
# 枪(新兵没有枪)
self.gun = None
def fire(self):
# 1.判断士兵是否有枪
if self.gun == None:
print('[%s] 还没有枪..' %(self.name))
return
print('go!!![%s]' %(self.name))
self.gun.add_bullet(50)
self.gun.shoot()
# 创建枪对象
ak = Gun('ak47')
# ak.add_bullet(50)
# ak.shoot()
# ak.shoot()
# 创建士兵对象
ryan = Soldier('Ryan')
# 通过主程序的赋值语句,士兵有枪了
ryan.gun = ak
ryan.fire()