python继承的实例
class SchoolMember(object):#定义学校
member=0#默认成员为0个
amount=0#默认学费为0元
def __init__(self,name,age,sex):#构造函数,定义父类的属性
self.name=name
self.age=age
self.sex=sex
self.enroll()#调用注册的函数
def enroll(self):
'''注册'''
print("just is enrolled a new school member[%s]"% self.name)
SchoolMember.member+=1#每注册一名成员,成员数量加1
def tell(self):#用来获取成员的属性
print("-----info:%s----"%self.name)
for k,v in self.__dict__.items():#用字典的形式来获取成员的属性
print("\t",k,v)
print("------end-------")
class Teacher(SchoolMember):#定义一个老师的类,并且继承这个学校
def __init__(self,name,age,sex,salary,course):#继承父类并且重构
SchoolMember.__init__(self,name,age,sex)#继承父类
self.salary=salary
self.course=course
def teaching(self):
print("the teacher is [%s] and his course is [%s]"% (self.name,self.course))
class Student(SchoolMember):#定义一个学生的类来继承父类
def __init__(self,name,age,sex,course,tuition):
SchoolMember.__init__(self,name,age,sex)
self.course=course
self.tuition=tuition
def pay_tuition(self,amount):#学费
print("student %s has justed paied %s"%(self.name,amount))
self.amount+=amount
t1=Teacher("xiangshucai",54,"F",4500,"physical")
s1=Student("xiangxiao",24,"F","python",6500)
s2=Student("liuhaimei",23,"F","python15",11000)
t1.teaching()
t1.tell()
s1.tell()
结果如下图所示:
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步