Python-面向对象-士兵瑞恩有一把ak47,可以装子弹,可以射击。


#枪:name,子弹数(弹夹)  发火

#人:name qiang,装子弹,射击

class Qiang:
    def __init__(self,name):
        self.name=name
        self.zds=5
        self.maxzds=10


    def shoot(self):
        print('piu')
        self.zds-=1
        print('开枪后还有%d颗子弹'%self.zds)
class Ren():
    def __init__(self,name,qiang):
        self.name=name
        self.qiang=qiang

    def shoot(self):
        if  self.qiang.zds==0:
            self.zhuangzidan()
            self.qiang.shoot()
        else:
            self.qiang.shoot()

    def zhuangzidan(self):
        n=int(input('请输入您要装的子弹数:'))
        if self.qiang.zds + n >= self.qiang.maxzds:
            print('直接加满')
            self.qiang.zds=self.qiang.maxzds
        else:
            self.qiang.zds = self.qiang.zds + n
            print('装弹后自子弹数剩余%d'%self.qiang.zds)

a=Qiang('ak47')
b=Ren('瑞恩',a)
b.shoot()
b.shoot()
b.shoot()
b.shoot()
b.shoot()
b.shoot()