python 创建子类_Python继承:创建子类时如何更新父属性?

试图理解多重继承。你知道吗

我创建了一个名为“Human”的父类,并从中创建了一个名为“Man”的子类。这个子类继承所有属性和方法,除了human\u gender属性被覆盖并设置为“male”之外。-这一切都很好,正如预期的那样。你知道吗

然后,我尝试创建了一个新的子类,名为'BoyChild'(来自'Man'),我希望继承Man的所有属性和方法,只是我希望覆盖age属性,将age设置为8。这是一个错误。你知道吗

为什么会发生这种错误?如果我从super()。init括号中删除'age=8',它将正常继承,但似乎无法覆盖继承的类'age'属性。你知道吗class human():

'''This is a human class'''

def __init__(self, human_gender = "unknown", age = 0,

hunger_level=0):

self.human_gender = human_gender

self.age = age

self.hunger_level = hunger_level

def setGender(self):

self.human_gender = input("Please enter human's gender:")

def setAge(self):

self.age = int(input("Please enter human's age"))

def setHunger_level(self):

self.hunger_level = int(input("Please enter human's hunger level (0-10)"))

class man(human):

'''This is a Man class'''

def __init__(self):

super().__init__(human_gender="male")

class boychild(man):

'''This is a Boychild class'''

def __init__(self):

super().__init__(age=8)

guy = boychild()

#guy.setGender()

#guy.setAge()

guy.setHunger_level()

print("The human is a: ", guy.human_gender)

print("The human is: ", guy.age)

print("The human's hunger level is: ", guy.hunger_level)

input()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值