用了@property以后 为什么原来的方法不能用了
class Student(object):
def __init__(self, name, score):
self.name = name
self.__score = score
def get_score(self):
return self.__score
@property
def grade(self):
if self.score < 60:
return 'C'
if self.score < 80:
return 'B'
return 'A'
@property
def score(self):
return self.__score
@score.setter
def score(self, score):
if not isinstance(score,int):
raise ValueError('score must be int')
if score < 0 or score > 100:
raise ValueError('invalid score')
self.__score = score
s = Student('Bob', 59)
print s.grade
print s.score
print s.get_score
s.score = 60
print s.grade
s.score = 99
print s.grade
原来的s.get_score 为什么不能正常使用了?