栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

类的学习之士兵突击(冯狗)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

类的学习之士兵突击(冯狗)

'''
类的学习
Gun类的属性:枪的类型    子弹数量(初始为0)
        方法:addzidan为枪增加子弹
shibing类的属性:士兵的名字 士兵的枪(初始没枪)
        方法:addgun为士兵增加抢
            fire开火-------->判断是否有子弹
                            开火的音效---->突突突
                            开火后子弹数量减一
'''




class Gun:
    def __init__(self,leixing):
        self.leixing = leixing
        self.zidan = 0

    def addzidan(self):
        self.zidan += 1
       # print('剩余子弹数{}'.format(self.zidan))

class shibing:
    def __init__(self,name):
        self.name = name
        self.gun =None

    def addgun(self,gun):
        self.gun = gun

    def fire(self):
        if self.gun.zidan <=0:
            print('子弹不足')
            return
        self.gun.zidan -=1
        print('突',end='')

ak47 = Gun('AK47')  #创建一个枪对象
fenggou = shibing('fenggou') #创建一个士兵对象

fenggou.addgun(ak47) #为士兵加枪
print('游戏开始n你有的枪为AK47n请向冯狗开炮')
while True:  #创造一个无限循环可以无限次选择开枪与加子弹
    while True:
        k = input('请输入要添加的子弹数【整数】')
        try:
            m = int(k)
            break
        except:
            print('让你输入整数你不听')
            continue
    for i in range(m):
        fenggou.gun.addzidan()
    print('剩余子弹数{}'.format(fenggou.gun.zidan))


    while True:
        s = input('请输入要射击的次数【整数】')
        try:
            s = int(s)
            break
        except:
            print('让你输入整数你不听')
            continue
    for i in range (s):
        fenggou.fire()
    if s <= 10:
        print('n冯狗还能挨揍往死里开枪')
    elif 10 <= s < 50:
        print('n冯狗被打成马蜂窝了')
    else:
        print('n冯狗已经成了一滩烂泥')
    print('n剩余子弹数{}'.format(fenggou.gun.zidan))
#print(ak47.zidan)
#ak47.addzidan()
#print(ak47.zidan)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/329428.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号