import uuid
import pickle
import os
# 功能部分:
# 校区创建完毕后,可以为每个校区创建班级
class Save():
def save(self,path):
with open(path + '{}_{}.pkl'.format(self.uid,self.name), 'wb') as f:
pickle.dump(self, f)
class School(Save):
def __init__(self,name,adr):
self.uid = uuid.uuid3(uuid.NAMESPACE_DNS,name)
self.name = name
self.adr = adr
self.classes_uid = []
def add_class(self,class_obj):
self.classes_uid.append(class_obj.uid)
def look_school(self):
print(self.name.center(50,'='))
for classw in self.classes_uid:
if os.path.exists('{}.pkl'.format(classw)):
while os.path.getsize('{}.pkl'.format(classw)):
with open('{}.pkl'.format(classw),'rb') as f:
class1 = pickle.load(f)
class1.look_class()
break
class Class(Save):
def __init__(self,name):
self.uid = uuid.uuid3(uuid.NAMESPACE_DNS,name)
self.name = name
self.courses_uid = []
self.students = []
def add_course(self,course_obj):
self.courses_uid.append(course_obj.uid)
def look_class(self):
print(self.name)
for cou1 in self.courses_uid:
if os.path.exists('{}.pkl'.format(cou1)):
while os.path.getsize('{}.pkl'.format(cou1)):
with open('{}.pkl'.format(cou1), 'rb') as f:
cou = pickle.load(f)
cou.look_course()
break
# 班级创建完毕后,可以为每个班级创建课程
#
# 学生创建完毕后,学生可以选择班级
class Course(Save):
def __init__(self,name,price,time):
self.uid = uuid.uuid3(uuid.NAMESPACE_DNS,name)
self.name = name
self.price = price
self.time = time
def look_course(self):
print('课程名称:{} 课程价格:{} 课程周期:{}'.format(self.name,self.price,self.time))
class Person(Save):
def __init__(self,name,age,sex):
self.__name = name
self.__age = age
self.__sex = sex
@property
def data(self):
return self.__name,self.__age,self.__sex
@property
def name(self): # obj1.name
return
@name.setter
def name(self,name_new):
if type(name_new) != str:
return
self.__name = name_new
@property
def age(self): # obj1.name
return
@age.setter
def age(self, age_new):
if type(age_new) != int:
return
self.__age = age_new
@property
def sex(self): # obj1.name
return
@sex.setter
def sex(self,sex_new):
if type(sex_new) != str:
return
if sex_new.lower() not in ['male','female']:
return
self.__sex = sex_new
class Student(Person):
def __init__(self,name,age,sex):
Person.__init__(self,name,age,sex)
self.uid = uuid.uuid3(uuid.NAMESPACE_DNS,name)
self.__classes = []
self.__cores = None
def choose_class(self,class_obj):
self.__classes.append(class_obj.uid)
def look_class(self):
print(self.__classes)
# 老师创建完毕后,可以为学生打分
class Teacher(Person):
def __init__(self,name,age,sex):
Person.__init__(self,name,age,sex)
self.uid = uuid.uuid3(uuid.NAMESPACE_DNS,name)
def set_core(self,stu_obj,core):
str_obj.__Student__cores = core
作业 4/9
猜你喜欢
转载自www.cnblogs.com/pythonwl/p/12668457.html
今日推荐
周排行