学习学习python之路之路
自学自学python之路之路
四川农业大学——大数据实验室第一次打卡
第六章第六章
6.2 类和实例类和实例
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))
bart = Student('Bart Simpson',59)
lisa = Student('Lisa Simpson',87)
bart.print_score()
print_score(lisa)
·类的特点:第一个参数永远是实例变量self,并且,调用时不用传递该参数,其他参数正常传入。
·类的方法:在【Student】类的内部定义访问数据的函数,这样,就把“数据”给封装起来了,这些封装数据的函数是和
【Student】类本身关联起来的,即为类的方法。
·封装的另外一个好处是可以给Student类增加新的方法,比如get_grade:
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'
bart = Student('Bart Simpson',59)
bart.get_grade()
小结小结
类是创建实例的模板,而实例则是一个个具体的对象,各个实例拥有的数据都互相独立,互不影响;
方法就是与实例绑定的函数,和普通函数不同,方法可以直接访问实例的数据;
通过在实例上调用方法,我们就直接操作了对象内部的数据,但无需知道方法内部的实现细节。
和静态语言不同,Python允许实例变量绑定任何数据,也就是说,对于两个实例变量,虽然他们都是同一个类的不同实例,
但拥有的变量名称都可能不同:
6.3 访问限制访问限制
·从前面的Student类的定义来看,外部代码还是可以自由的修改一个实例的name、score属性: