python使我头秃 2021-05-06 22:37 采纳率: 100%
浏览 3287
已采纳

定义一个python类,属性包含姓名,性别,年龄.....

定义一个Person类,属性包含姓名,性别,年龄和战斗值,同时定义一个类属性Counter用于对象计数,Person类对象具有战斗(battle)、练习(practise)、吃饭(eat)和显示信息(info)方法,其中战斗一次扣除战斗值100,练习一次增加战斗值200,吃饭一次增加战斗值80,信息方法中显示形如”I am player *, I have * fighting value.“(*为具体的值)。已知有两个小伙伴xiaohua和xiaoqiang,其中xiaohua是女生(F)、18岁,初始战斗值为2000,xiaoqiang是男生(M)、19岁,初始战斗值为1500,假设输出信息如下: I am player 1 xiaohua, I have 2000 fighting value. I am player 1 xiaohua, I have 1980 fighting value. I am player 2 xiaoqiang, I have 1760 fighting value. 请写出相应的类,并实例化对象,设计完成相应的任务(battle、practise或eat及info)并输出。

  • 写回答

4条回答 默认 最新

  • 关注
    class Person:
        Counter = 0
        def __init__(self,name,sex,age,fighting_value):
            Person.Counter += 1
            self.name = name
            self.sex = sex
            self.age = age
            self.fighting_value = fighting_value
            self.id = Person.Counter
    
        def battle(self):
            print(f'【{self.name} 战斗】') #显示执行效果,不需要的话可以删除
            self.fighting_value -= 100
    
        def practise(self):
            print(f'【{self.name} 练习】') #显示执行效果,不需要的话可以删除
            self.fighting_value += 200
    
        def eat(self):
            print(f'【{self.name} 吃饭】') #显示执行效果,不需要的话可以删除
            self.fighting_value += 80
    
        def info(self):
            print(f'I am player {self.id} {self.name}, I have {self.fighting_value} fighting value.')
    
    
    p1 = Person("xiaohua","F",18,2000)
    p2 = Person("xiaoqiang","M",19,1500)
    p1.info()
    p2.info()
    p1.battle()
    p2.eat()
    p1.info()
    p2.info()
    p1.eat()
    p2.practise()
    p1.info()
    p2.info()
    p1.battle()
    p2.practise()
    p1.info()
    p2.info()
    

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算