#-*- coding:utf-8 -*-#Author:Wong Du
classSchoolMember(object):'''学校成员基类,用于被继承创建各类学校成员'''MemberCount=0
SchMem_list=[]def __init__(self, name, age, id=None):'''构造函数,初始化基础环境变量
:param name:
:param age:
:param id:'''self.name=name
self.age=age
self.id=iddeftell(self):'''介绍方法'''
pass
defenroll(self):'''注册方法,用于统计注册人员信息
:return:'''SchoolMember.MemberCount+= 1
print("\033[32;1m SchoolMember [%s] is enrolled, now there are [%s] members\033[0m"
%(self.name,SchoolMember.MemberCount))
self.SchMem_list.append(self)#def __del__(self):
#'''析构函数'''
#print("\033[31;1m SchoolMember [%s] has resigned! \033[0m" %self.name)
classTeather(SchoolMember):'''教师成员,继承父类SchoolMember,
用于创建学校成员:教师'''
def __init__(self, name, age, course, salary, tid=None):'''构造函数,创建初始化教师信息
:param name:
:param age:
:param course:
:param salary:
:param tid:'''super(Teather, self).__init__(name, age)
self.course=course
self.salary=salary
self.tid=tid
self.enroll()deftell(self):'''介绍方法'''
print("\033[33;1m Hi, I am your [%s] course teather, my name is [%s], nice to meet you...\033[0m"
%(self.course, self.name))defteching(self):'''教授课程说明'''
print("\033[34;1m Teacher [%s] is teching the [%s] course...\033[0m" %(self.name, self.course))classStudent(SchoolMember):'''学生成员,继承父类SchoolMember,
用于创建学校成员:学生'''
def __init__(self, name, age, grade, sid=None):
super(Student, self).__init__(name, age)
self.grade=grade
self.sid=sid
self.enroll()deftell(self):'''自我介绍方法'''
print("\033[33;1m Hi, My name is [%s], nice to meet you...\033[0m" %self.name)
t1= Teather('Yangyue','37','数学','10000')
t2= Teather('Zhaoyun','28','武术','12000')
s1= Student('Caiyun','23','Python')
s2= Student('Dudu','22','数学')
t1.tell()
t2.teching()
s1.tell()print(len(SchoolMember.SchMem_list))#print(SchoolMember.SchMem_list[1].name)
for i inrange(len(SchoolMember.SchMem_list)):print(SchoolMember.SchMem_list[i].name)