Python中继承一个类的问题

如果父类中有私有属性,子类是不是就继承不了这个父类了?例如如下的代码所示:

class Person(object):
   def __init__(self, name, gender, score):
       self.name = name
       self.gender = gender
       self.__score = score
class Student(Person):
   def __init__(self, name, gender,  course):
       super(Student, self).__init__(name, gender, score)
       self.course = course
p1 = Student('xiaoming', '2', '90',  'English')
print p1.name
print p1.gender
#print p1.score
print p1.course

如果我print p1.score,就会报错类student没有score属性

如果我只继承父类Person中name, gender,又会报错__init__()有4个参数,已经给了3个

是不是父类的私有属性子类继承不了?如果是,子类应该怎么只继承父类的非私有属性呢?

qq_赞赞赞_0
浏览 1465回答 1
1回答

MR帽子先生

是的,私有的意思是只能在这个类里面用的,外面不能用,也就是说子类虽然没有继承父类的私有属性,但是还是可以通过父类调用的方式来使用父类的私有属性。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python