37,720
社区成员
发帖
与我相关
我的任务
分享
class Person:
def __init__(self, name):
self.name = name
# Getter function
@property
def name(self):
return self._name
# Setter function
@name.setter
def name(self, value):
if not isinstance(value, str):
raise TypeError('Expected a string')
self._name = value
class SubPerson(Person):
@property
def name(self):
print('Getting name')
return super().name # Why super().name works here?
@name.setter
def name(self, value):
print('Setting name to', value)
super(SubPerson, SubPerson).name.__set__(self, value)
#super().name = value ... This statement gets error
#super(SubPerson, SubPerson).name = value ...Get Error