面向对象的第一个特性:封装
class Student(object):
def __init__(self, name, age, score):
self.name = name
self.age = age
self.score = score
print("self:%s" %(self))
def get_level(self):
if 90<self.score<=100:
return "%s,%s,A" %(self.name,self.age)
elif 80<self.score<=90:
return "%s,%s,B" %(self.name,self.age)
else:
return "%s,%s,C" %(self.name,self.age)
stu1 = Student("westos",10,100)
print(stu1)
print(stu1.name)
print(stu1.age)
print(stu1.score)
print(stu1.get_level())
self:<__main__.Student object at 0x7efce8331080>
<__main__.Student object at 0x7efce8331080>
westos
10
100
westos,10,A
面向对象的第二个特性:继承
class Student(object):
def __init__(self, name, age, score):
self.name = name
self.age = age
self.score = score
print("self:%s" %(self))
def get_level(self):
if 90<self.score<=100:
return "%s,%s,A" %(self.name,self.age)
elif 80<self.score<=90:
return "%s,%s,B" %(self.name,self.age)
else:
return "%s,%s,C" %(self.name,self.age)
class SeniorStudent(Student):
def __init__(self,name,age,score,gender):
super(SeniorStudent, self).__init__(name,age,score)
self.gender = gender
def get_level(self):
print("this is a senior score level")
return super(SeniorStudent, self).get_level()
s1 = SeniorStudent("westos",10,100, "男")
print(s1)
print(s1.get_level())
self:<__main__.SeniorStudent object at 0x7f00e644c160>
<__main__.SeniorStudent object at 0x7f00e644c160>
this is a senior score level
westos,10,A