为了账号安全,请及时绑定邮箱和手机立即绑定

父类变量初始化问题

子类继承父类slots的变量不能在子类里调用super来初始化吗?

正在回答

2 回答

不行。我用

def __init__(self, name, gender, score):
        super(Student, self).__init__(name, gender)
        self.score = score

是报错的

0 回复 有任何疑惑可以回复我~

可以啊

class Student(Person):

    __slots__ = ('score',)

    def __init__(self, name, gender, score):
        super(Student, self).__init__(name, gender)
        self.score = score

class Student(Person):

    __slots__ = ('score',)

    def __init__(self, name, gender, score):
        self.name = name
        self.gender = gender
        self.score = score

效果是一样的

1 回复 有任何疑惑可以回复我~
#1

seth_lin

大侠,请教一下,像以上情况,如果不知道父类有哪些属性,想在子类中继承父类所有的属性再自己添加一个score属性,应该怎么写呢
2021-03-12 回复 有任何疑惑可以回复我~
#2

花鸿 回复 seth_lin

按道理来说应该不会不知道父类里有哪些属性。
2021-11-23 回复 有任何疑惑可以回复我~
#3

weixin_慕慕2143273

报错的
2021-12-13 回复 有任何疑惑可以回复我~
#4

慕沐1354941 回复 seth_lin

感觉不能继承了 会报错read-only
2022-05-09 回复 有任何疑惑可以回复我~
#5

PekingMr2 回复 seth_lin

super().__init__() 这样可以吗
2024-02-23 回复 有任何疑惑可以回复我~
查看2条回复

举报

0/150
提交
取消

父类变量初始化问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信