Python急需,急需各位有经验的帮我解答

3、类与继承(20分)

(1)创建一个Person类,在构造函数中初始化名字name、年龄age、班级class属性,有对应的成员方法:吃饭eat,要求调用该方法时打印xx要吃

饭,xx指名字。

(5分)

(2)创建-一个 Worker类,要继承父类Person的所有数据成员和成员方法,

要使用继承方法继承,包括name、age、 class 属性。除此之外有自己的属性:

基本工资basic、绩效performance。并且Worker类有自己的成员方法:所得

税tax,所得税tax计算(总收入等于基本工资加绩效。总收入小于3000,税

额为零;大于3000,超过3000的部分,按20%收税),要求调用该方法时打

印“XX.,应纳税额为___” XXX 指名字,下划线部分要通过tax计算。(8分)

w1 = Worker(你的名字,你的年龄,你的班级,基本工资,绩效)对Worker类的

五种属性和两种方法进行测试,并输出结果,(7分)

class Person:
    def __init__(self, name, age, class_):
        self.name = name
        self.age = age
        self.class_ = class_
    def eat(self):
        print(self.name, "要吃饭", sep="")

class Worker(Person):
    def __init__(self, name, age, class_, basic, performance):
        super().__init__(name, age, class_)
        self.basic = basic
        self.performance = performance
    def tax(self):
        '''所得税计算'''
        self.receipts = self.basic + self.performance #总收入
        if self.receipts <= 3000: #总收入小于等于3000
            print(self.name, ",应纳税额为0", sep="")
        else:
            taxnum = (self.receipts - 3000) * 0.2
            taxnum = round(taxnum, 2) #税额保留2位小数
            print(self.name, ",应纳税额为", taxnum, sep="")

def test():
    w1 = Worker("小明", 20, 1, 5000, 500)
    print(w1.name, w1.age, w1.class_, w1.basic, w1.performance)
    w1.eat()
    w1.tax()

if __name__ == "__main__":
    test()

运行结果如下:

img