数据封装:
>>> class Student(object):
... def __init__(self, name, score):
... self.name = name
... self.score = score
... def print_score(self):
... print('%s: %s' %(self.name, self.score))
...
>>> xiaoli = Student('xiaoli', 98)
>>> xiaoli.print_score()
xiaoli: 98
复制代码
创建一个实例后,直接调用方法就可以输出属性值(名字,分数)
封装还可以添加新的方法:
>>> class Student(object):
... def __init__(self, name, score):
... self.name = name
... self.score = score
... def print_score(self):
... print('%s: %s' % (self.name, self.score))
... def get_grade(self):
... if self.score >= 90:
... return 'A'
... elif self.score >= 60:
... return 'B'
... else:
... return 'C'
...
>>> xiaoli = Student('xiaoli', 98)
>>> luna = Student('luna', 58)
>>> xiaoli.print_score()
xiaoli: 98
>>> luna.print_score()
luna: 58
>>>
复制代码
总结一下:数据封装的好处,一个是调用者不需要知道内部实现 另外一个,在类中可以增加新的方法