python 開發程序:選課系統


本節作業:選課系統

角色:學校、學員、課程、講師
要求:
1. 創建北京、上海 2 所學校
2. 創建linux , python , go 3個課程 , linux\py 在北京開, go 在上海開
3. 課程包含,周期,價格,通過學校創建課程
4. 通過學校創建班級, 班級關聯課程、講師
5. 創建學員時,選擇學校,關聯班級
5. 創建講師角色時要關聯學校,
6. 提供兩個角色接口
6.1 學員視圖, 可以注冊, 交學費, 選擇班級,
6.2 講師視圖, 講師可管理自己的班級, 上課時選擇班級, 查看班級學員列表 , 修改所管理的學員的成績
6.3 管理視圖,創建講師, 創建班級,創建課程

7. 上面的操作產生的數據都通過pickle序列化保存到文件里

 

程序:

1、README

作者:wangeq
版本:示例版本 v0.1
程序介紹:
    實現選課系統 常用功能
    功能全部用python的基礎知識實現,用到了os\sys\json\pickle\函數\模塊\類知識
    程序:http://www.cnblogs.com/wangeq/p/6504644.html


程序結構:
day06/
├── course system #coure主程目錄
    ├── __init__.py
    ├── bin #course 執行文件 目錄
    │   ├── __init__.py
    │   ├── course.py  #course system 執行程序
    ├── core #主要程序邏輯都 在這個目錄 里
    │   ├── __init__.py
    │   ├── main.py   #主要程序交互
    │   ├── uid.py    #生成uid信息
    ├── db  #用戶數據存儲的地方
        ├── __init__.py
        └── admin    #存管理員信息
        └── classes  #存班級信息
        └── school   #存學校信息
        └── course   #存課程信息
        └── student  #存學員信息
        └── teacher  #存講師信息
        └── class_grade   #存講師創建的學生成績
        └── class_record  #存講師創建的學生上課記錄

 

2、程序目錄結構

 

3、程序

執行文件入口 cource.py

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 #version:3.5.2
 4 #author:wangeq
 5 
 6 import sys,os
 7 
 8 #程序主目錄
 9 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
10 #添加環境變量
11 sys.path.append(BASE_DIR)
12 
13 from core import main
14 
15 if __name__ == '__main__':
16     a =main.Run()
17     a.interactive()
course.py

 

主程序 main.py

  1 #!/usr/bin/env python
  2 # -*- coding:utf-8 -*-
  3 #version:3.5.2
  4 #author:wangeq
  5 
  6 import sys,os
  7 import json
  8 import pickle
  9 
 10 from bin import course
 11 from core import uid
 12 
 13 #數據庫文件路徑
 14 db_DIR = course.BASE_DIR + r"\db"
 15 db_school = db_DIR + r"\school"
 16 db_teacher = db_DIR + r"\teacher"
 17 db_student = db_DIR + r"\student"
 18 db_classes = db_DIR + r"\classes"
 19 db_course = db_DIR + r"\course"
 20 db_admin = db_DIR + r"\admin"
 21 db_class_record = db_DIR + r"\class_record"
 22 db_class_grade = db_DIR + r"\class_grade"
 23 
 24 #基礎類,主要包括文件的讀寫操作
 25 class Baseclass(object):
 26     def __init__(self):
 27         pass
 28     def save(self,type,dict):
 29         filename = uid.create_md()
 30         dict['uid'] = filename
 31         file_path = "%s\%s" %(db_DIR,type)
 32         ab_file = "%s\%s" %(file_path,filename)
 33         if os.path.isdir(file_path):
 34             with open(ab_file,"wb") as f:
 35                 f.write(pickle.dumps(dict))
 36                 if True:
 37                     print(
 38                     "-------",type,"創建成功","-------")
 39                     for key in dict:
 40                         print(key,":\t",dict[key])
 41     def seek_list(self,type,list):
 42         filename = uid.create_md()
 43         file_path = "%s\%s" %(db_DIR,type)
 44         ab_file = "%s\%s" %(file_path,filename)
 45         if os.path.isdir(file_path):
 46             with open(ab_file,"wb") as f:
 47                 f.write(pickle.dumps(list))
 48                 if True:
 49                     print(
 50                     "-------",type,"創建成功","-------")
 51                     for i in list:
 52                         for key in i:
 53                             print(key,i[key])
 54                         print("\n")
 55         return True
 56 
 57     def open(self,type):
 58         all_data = []
 59         db_path = "%s\%s" %(db_DIR,type)
 60         for i in os.listdir(db_path):
 61             if os.path.isfile(os.path.join(db_path,i)):
 62                 db_file = os.path.join(db_path,i)
 63                 with open(db_file,"rb") as f:
 64                     file_dict = pickle.load(f)
 65                     all_data.append(file_dict)
 66         return all_data
 67 
 68 #管理員類
 69 class Admin(Baseclass):
 70     def __init__(self):
 71         Baseclass.__init__(self)
 72     def create_school(self):
 73         school_dict = {}
 74         school_name = input("校名:")
 75         school_address = input("地址:")
 76         s1 = School(school_name, school_address)
 77         school_dict["校名"] = s1.school_name
 78         school_dict["地址"] = s1.school_address
 79         Baseclass.save(self, "school", school_dict)
 80     def create_teacher(self):
 81         teacher_dict = {}
 82         teacher_name = input("講師姓名:")
 83         teacher_salary = input("講師工資:")
 84         teacher_school = input("所屬學校:")
 85         t1 = Teacher(teacher_name, teacher_salary, teacher_school)
 86         teacher_dict["姓名"] = t1.teacher_name
 87         teacher_dict["工資"] = t1.teacher_salary
 88         teacher_dict["所屬學校"] = t1.teacher_school
 89         print(teacher_dict)
 90         Baseclass.save(self, "teacher", teacher_dict)
 91     def create_student(self):
 92         student_dict = {}
 93         student_name = input("學員姓名:")
 94         student_sex = input("學員性別:")
 95         student_school = input("所屬學校:")
 96         student_classes = input("學員班級:")
 97         st1 = Student(student_name, student_sex, student_school, student_classes)
 98         student_dict["姓名"] = st1.student_name
 99         student_dict["性別"] = st1.student_sex
100         student_dict["學校"] = st1.student_school
101         student_dict["班級"] = st1.student_classes
102         Baseclass.save(self, "student", student_dict)
103     def create_course(self):
104         course_dict = {}
105         course_name = input("課程名:")
106         course_period = input("周期:")
107         course_prices = input("價格:")
108         c1 = Course(course_name, course_period, course_prices)
109         course_dict["課程名"] = c1.course_name
110         course_dict["周期"] = c1.course_period
111         course_dict["價格"] = course_prices
112         Baseclass.save(self, "course", course_dict)
113     def create_classes(self):
114         classes_dict = {}
115         classes_name = input("班級名:")
116         classes_teachter = input("負責講師:")
117         classes_course = input("所學課程:")
118         cs1 = Classes(classes_name, classes_teachter, classes_course)
119         classes_dict["班級名"] = cs1.classes_name
120         classes_dict["負責講師"] = cs1.classes_teacher
121         classes_dict["課程"] = cs1.classes_course
122         Baseclass.save(self, "classes", classes_dict)
123 
124 #學校類
125 class School(Baseclass):
126     def __init__(self,school_name,school_address):
127         Baseclass.__init__(self)
128         self.school_name = school_name
129         self.school_address = school_address
130 
131 #講師類
132 class Teacher(Baseclass):
133     def __init__(self,teacher_name,teacher_salary,teacher_school):
134         Baseclass.__init__(self)
135         self.teacher_name = teacher_name
136         self.teacher_salary = teacher_salary
137         self.teacher_school = teacher_school
138     def create_class_record(self):
139         class_record = []
140         student_school = input("選擇學校:")
141         student_classes = input("選擇班級:")
142         student_times = input("課次:")
143         student_list = Baseclass.open(self,"student")
144         for i in student_list:
145             if i["學校"] == student_school and i["班級"] == student_classes:
146                 student_name = i["姓名"]
147                 student_status = input("%s 上課情況:" % student_name)
148                 i["上課情況"] = student_status
149                 i["課次"] = student_times
150                 class_record.append(i)
151         Baseclass.seek_list(self,"class_record",class_record)
152     def create_class_grade(self):
153         class_grade = []
154         student_school = input("選擇學校:")
155         student_classes = input("選擇班級:")
156         student_times = input("課次:")
157         student_list = Baseclass.open(self,"student")
158         for i in student_list:
159             if i["學校"] == student_school and i["班級"] == student_classes:
160                 student_name = i["姓名"]
161                 student_grade = input("%s 成績:" % student_name)
162                 i["成績"] = student_grade
163                 i["課次"] = student_times
164                 class_grade.append(i)
165         Baseclass.seek_list(self,"class_grade",class_grade)
166     def teacher_view_grade(self):
167         grade_list = []
168         student_school = input("校名:")
169         student_class = input("班級:")
170         student_times = input("課次:")
171         class_grade_list = Baseclass.open(self, "class_grade")
172         for i in class_grade_list:
173             for j in i:
174                 if j["學校"] == student_school and j["班級"] == student_class and j["課次"] == student_times:
175                     grade_list.append(j)
176         for i in grade_list:
177             for key in i:
178                 print(key,i[key])
179             print("\n")
180 
181     def tacher_view_record(self):
182         record_list = []
183         student_school = input("校名:")
184         student_class = input("班級:")
185         student_times = input("課次:")
186         class_record_list = Baseclass.open(self, "class_record")
187         for i in class_record_list:
188             for j in i:
189                 if j["學校"] == student_school and j["班級"] == student_class and j["課次"] == student_times:
190                     record_list.append(j)
191         for i in record_list:
192             for key in i:
193                 print(key,i[key])
194             print("\n")
195 
196 #課程類
197 class Course(Baseclass):
198     def __init__(self,course_name,course_period,course_prices):
199         Baseclass.__init__(self)
200         self.course_name = course_name
201         self.course_period = course_period
202         self.course_prices = course_prices
203 
204 #學員類
205 class Student(Baseclass):
206 
207     def __init__(self,student_name,student_sex,student_school,student_classes):
208         Baseclass.__init__(self)
209         self.student_name = student_name
210         self.student_sex = student_sex
211         self.student_school = student_school
212         self.student_classes = student_classes
213     def student_registered(self):
214         student_dict = {}
215         print("歡迎進入學生注冊系統")
216         student_name = input("注冊姓名:")
217         student_sex = input("性別:")
218         student_school = input("學校:")
219         student_class = input("班級:")
220         st1 = Student(student_name,student_sex,student_school,student_class)
221         student_dict["姓名"] = st1.student_name
222         student_dict["性別"] = st1.student_sex
223         student_dict["學校"] = st1.student_school
224         student_dict["班級"] = st1.student_classes
225         Baseclass.save(self, "student", student_dict)
226     def student_pay_fees(self):
227         pass
228     def student_view_grade(self):
229         student_school = input("校名:")
230         student_class = input("班級:")
231         student_times = input("課次:")
232         student_name = input("姓名:")
233         class_grade_list = Baseclass.open(self,"class_grade")
234         for i in class_grade_list:
235             for j in i:
236                 if j["學校"] == student_school and j["班級"] == student_class and j["課次"] == student_times \
237                     and j["姓名"] == student_name:
238                     for key in j:
239                         print(key,j[key])
240                     print("\n")
241     def student_view_record(self):
242         student_school = input("校名:")
243         student_class = input("班級:")
244         student_times = input("課次:")
245         student_name = input("姓名:")
246         class_record_list = Baseclass.open(self,"class_record")
247         for i in class_record_list:
248             for j in i:
249                 if j["學校"] == student_school and j["班級"] == student_class and j["課次"] == student_times \
250                     and j["姓名"] == student_name:
251                     for key in j:
252                         print(key,j[key])
253                     print("\n")
254 
255 #課程類
256 class Classes(Baseclass):
257     def __init__(self,classes_name,classes_teachter,classes_course):
258         Baseclass.__init__(self)
259         self.classes_name = classes_name
260         self.classes_teacher = classes_teachter
261         self.classes_course = classes_course
262 
263 #管理員視圖,繼承Admin類
264 class Admin_view(Admin):
265     def __init__(self):
266         Admin.__init__(self)
267     def auth(self,username,password):
268         admin_file = "%s/%s.json" %(db_admin,username)
269         if os.path.isfile(admin_file):
270             with open(admin_file, 'r') as f:
271                 admin_data = json.load(f)
272             if admin_data["name"] == username and admin_data["password"] == password:
273                 return True
274             else:
275                 print("用戶名或密碼錯誤")
276     def login(self):
277         menu = u'''
278         ------- 歡迎進入管理視圖 ---------
279             \033[32;1m 1.  校區管理
280             2.  講師管理
281             3.  學員管理
282             4.  課程管理
283             5.  返回
284             \033[0m'''
285         menu_dic = {
286             '1': Admin_view.school_manager,
287             '2': Admin_view.teacher_manager,
288             '3': Admin_view.student_manager,
289             '4': Admin_view.course_manager,
290             '5': "logout",
291         }
292         username = input("輸入用戶名:").strip()
293         password = input("輸入密碼:").strip()
294         auth = Admin_view.auth(self,username,password)
295         if auth:
296             exit_flag = False
297             while not exit_flag:
298                 print(menu)
299                 option = input("請選擇:").strip()
300                 if option in menu_dic:
301                     if int(option) == 5:
302                         exit_flag = True
303                     else:
304                         print(menu_dic[option])
305                         menu_dic[option](self)
306                 else:
307                     print("\033[31;1m輸入錯誤,重新輸入\033[0m")
308     def school_manager(self):
309         exit_flag = False
310         while not exit_flag:
311             print("""
312                 ------- 歡迎進入校區管理 ---------
313                 \033[32;1m1.  創建校區
314                 2.  創建班級
315                 3.  返回
316                 \033[0m
317             """)
318             option = input("請選擇:").strip()
319             if int(option) == 1:
320                 Admin.create_school(self)
321             elif int(option) == 2:
322                 Admin.create_classes(self)
323             else:
324                 exit_flag = True
325     def teacher_manager(self):
326         exit_flag = False
327         while not exit_flag:
328             print("""
329                 ------- 歡迎進入講師管理 ---------
330                 \033[32;1m 1.  創建講師
331                 2.  ...
332                 3.  返回
333                 \033[0m
334             """)
335             option = input("請選擇:").strip()
336             if int(option) == 1:
337                 Admin.create_teacher(self)
338             elif int(option) == 2:
339                 print("擴展中")
340             else:
341                 exit_flag = True
342 
343     def student_manager(self):
344         exit_flag = False
345         while not exit_flag:
346             print("""
347                 ------- 歡迎進入學員管理 ---------
348                 \033[32;1m 1.  創建學員
349                 2.  ...
350                 3.  返回
351                 \033[0m
352             """)
353             option = input("請選擇:").strip()
354             if int(option) == 1:
355                 Admin.create_student(self)
356             elif int(option) == 2:
357                 print("擴展中")
358             else:
359                 exit_flag = True
360     def course_manager(self):
361         exit_flag = False
362         while not exit_flag:
363             print("""
364                 ------- 歡迎進入課程管理 ---------
365                 \033[32;1m 1.  創建課程
366                 2.  ...
367                 3.  返回
368                 \033[0m
369             """)
370             option = input("請選擇:").strip()
371             if int(option) == 1:
372                 Admin.create_course(self)
373             elif int(option) == 2:
374                 print("擴展中")
375             else:
376                 exit_flag = True
377 
378 #講師視圖類,繼承Teacher類
379 class Teacher_view(Teacher,):
380     def __init__(self,teacher_name,teacher_salary,teacher_school):
381         Teacher.__init__(self,teacher_name,teacher_salary,teacher_school)
382     def login(self):
383         menu = u'''
384         ------- 歡迎進入講師視圖 ---------
385             \033[32;1m  1.  創建上課記錄
386             2.  創建學員成績
387             3.  查看學員上課記錄
388             4.  查看學員成績
389             5.  返回
390             \033[0m'''
391         menu_dic = {
392             '1': Teacher.create_class_record,
393             '2': Teacher.create_class_grade,
394             '3': Teacher.tacher_view_record,
395             '4': Teacher.teacher_view_grade,
396             '5': "logout",
397         }
398         if True:
399             exit_flag = False
400             while not exit_flag:
401                 print(menu)
402                 option = input("請選擇:").strip()
403                 if option in menu_dic:
404                     if int(option) == 5:
405                         exit_flag = True
406                     else:
407                         print(menu_dic[option])
408                         menu_dic[option](self)
409                 else:
410                     print("\033[31;1m輸入錯誤,重新輸入\033[0m")
411 
412 #學員視圖類,繼承Student類
413 class Student_view(Student):
414     def __init__(self,student_name,student_sex,student_school,student_classes):
415         Student.__init__(self,student_name,student_sex,student_school,student_classes)
416 
417     def login(self):
418         menu = u'''
419         ------- 歡迎進入學生管理視圖 ---------
420         \033[32;1m 1.  注冊
421         2.  交學費
422         3.  查看上課記錄
423         4.  查看作業成績
424         5.  返回
425         \033[0m'''
426         menu_dic = {
427             '1': Student.student_registered,
428             '2': Student.student_pay_fees,
429             '3': Student.student_view_record,
430             '4': Student.student_view_grade,
431             '5': "logout",
432         }
433         if True:
434             exit_flag = False
435             while not exit_flag:
436                 print(menu)
437                 option = input("請選擇:").strip()
438                 if option in menu_dic:
439                     if int(option) == 5:
440                         exit_flag = True
441                     else:
442                         menu_dic[option](self)
443                 else:
444                     print("\033[31;1m輸入錯誤,重新輸入\033[0m")
445 
446 #程序交互類
447 class Run(object):
448     def __init__(self):
449         pass
450     def interactive(self):
451         menu = u'''
452         ------- 歡迎進入選課系統 ---------
453         \033[32;1m 1.  學生視圖
454         2.  講師視圖
455         3.  管理視圖
456         4.  退出
457         \033[0m'''
458         menu_dic = {
459             '1': Student_view,
460             '2': Teacher_view,
461             '3': Admin_view,
462             # '4': logout,
463         }
464         exit_flag = False
465         while not exit_flag:
466             print(menu)
467             option_view = input("請選擇視圖:").strip()
468             if option_view in menu_dic:
469                 if int(option_view) == 4:
470                     exit_flag = True
471                 else:
472                     menu_dic[option_view].login(self)
473             else:
474                 print("\033[31;1m輸入錯誤,重新輸入\033[0m")
main.py

 

生成uid程序 uid.py

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 #version:3.5.2
 4 #author:wangeq
 5 
 6 import hashlib
 7 import time
 8 
 9 def create_md():
10     m = hashlib.md5()
11     m.update(bytes(str(time.time()),encoding='utf-8'))
12     return m.hexdigest()
uid.py

 

數據庫目錄

 

4、程序演示:

管理視圖:
"D:\Program Files (x86)\Python35-32\python.exe" "D:/PycharmProjects/wangeq/day06/作業/course system/bin/course.py"

        ------- 歡迎進入選課系統 ---------
         1.  學生視圖
        2.  講師視圖
        3.  管理視圖
        4.  退出
        
請選擇視圖:3
輸入用戶名:admin
輸入密碼:admin

        ------- 歡迎進入管理視圖 ---------
             1.  校區管理
            2.  講師管理
            3.  學員管理
            4.  課程管理
            5.  返回
            
請選擇:1
<function Admin_view.school_manager at 0x006D41E0>

                ------- 歡迎進入校區管理 ---------
                1.  創建校區
                2.  創建班級
                3.  返回
                
            
請選擇:1
校名:oldboy
地址:beijing
------- school 創建成功 -------
uid :     bbdd5b596750c01a674cba867cdb6fbd
地址 :     beijing
校名 :     oldboy

                ------- 歡迎進入校區管理 ---------
                1.  創建校區
                2.  創建班級
                3.  返回
                
            
請選擇:1
校名:oldboy
地址:shanghai
------- school 創建成功 -------
uid :     b9f82d9c1365bde4840c3f216b298f1b
地址 :     shanghai
校名 :     oldboy

                ------- 歡迎進入校區管理 ---------
                1.  創建校區
                2.  創建班級
                3.  返回
                
            
請選擇:2
班級名:16
負責講師:alex
所學課程:python
------- classes 創建成功 -------
uid :     d07434b43fb00a4ca43ca408fcd8980e
負責講師 :     alex
課程 :     python
班級名 :     16

                ------- 歡迎進入校區管理 ---------
                1.  創建校區
                2.  創建班級
                3.  返回
                
            
請選擇:2
班級名:15
負責講師:wpq
所學課程:python
------- classes 創建成功 -------
uid :     5e4fc15541e713ee06a56ecd13162e55
負責講師 :     wpq
課程 :     python
班級名 :     15

                ------- 歡迎進入校區管理 ---------
                1.  創建校區
                2.  創建班級
                3.  返回
                
請選擇:3

        ------- 歡迎進入管理視圖 ---------
             1.  校區管理
            2.  講師管理
            3.  學員管理
            4.  課程管理
            5.  返回
            
請選擇:2
<function Admin_view.teacher_manager at 0x006E4228>

                ------- 歡迎進入講師管理 ---------
                 1.  創建講師
                2.  ...
                3.  返回
                
            
請選擇:1
講師姓名:alex
講師工資:100000
所屬學校:oldboy
{'姓名': 'alex', '所屬學校': 'oldboy', '工資': '100000'}
------- teacher 創建成功 -------
姓名 :     alex
uid :     ffb19d722dc47b6d2e370690a4b6644d
所屬學校 :     oldboy
工資 :     100000

                ------- 歡迎進入講師管理 ---------
                 1.  創建講師
                2.  ...
                3.  返回
                
            
請選擇:3

        ------- 歡迎進入管理視圖 ---------
             1.  校區管理
            2.  講師管理
            3.  學員管理
            4.  課程管理
            5.  返回
            
請選擇:3
<function Admin_view.student_manager at 0x006E4270>

                ------- 歡迎進入學員管理 ---------
                 1.  創建學員
                2.  ...
                3.  返回
                
            
請選擇:1
學員姓名:jack
學員性別:F
所屬學校:oldboy
學員班級:16
------- student 創建成功 -------
姓名 :     jack
uid :     4617ecffc46045db1bf14529aef5bb47
性別 :     F
學校 :     oldboy
班級 :     16

                ------- 歡迎進入學員管理 ---------
                 1.  創建學員
                2.  ...
                3.  返回
                
            
請選擇:3

        ------- 歡迎進入管理視圖 ---------
             1.  校區管理
            2.  講師管理
            3.  學員管理
            4.  課程管理
            5.  返回
            
請選擇:4
<function Admin_view.cource_manager at 0x006E42B8>

                ------- 歡迎進入課程管理 ---------
                 1.  創建課程
                2.  ...
                3.  返回
                
            
請選擇:1
課程名:python
周期:7
價格:110000
------- cource 創建成功 -------
uid :     59bd676e9fb5ab1fd70d91582fd65cec
課程名 :     python
周期 :     7
價格 :     110000

            
講師視圖

        ------- 歡迎進入選課系統 ---------
         1.  學生視圖
        2.  講師視圖
        3.  管理視圖
        4.  退出
        

請選擇視圖:2

        ------- 歡迎進入講師視圖 ---------
              1.  創建上課記錄
            2.  創建學員成績
            3.  查看學員上課記錄
            4.  查看學員成績
            5.  返回
            
請選擇:1
<function Teacher.create_class_record at 0x006BDDB0>
選擇學校:oldboy
選擇班級:16
課次:1
jack 上課情況:chuqin
wangeq 上課情況:queqin
------- class_record 創建成功 -------
班級 16
uid 4617ecffc46045db1bf14529aef5bb47
姓名 jack
課次 1
學校 oldboy
上課情況 chuqin
性別 F


班級 16
uid cc151d309c4d50e516b0eb4cc1257c1c
姓名 wangeq
課次 1
學校 oldboy
上課情況 queqin
性別 F



        ------- 歡迎進入講師視圖 ---------
              1.  創建上課記錄
            2.  創建學員成績
            3.  查看學員上課記錄
            4.  查看學員成績
            5.  返回
            
請選擇:2
<function Teacher.create_class_grade at 0x006BDDF8>
選擇學校:oldboy
選擇班級:16
課次:1
jack 成績:B
wangeq 成績:A
------- class_grade 創建成功 -------
班級 16
uid 4617ecffc46045db1bf14529aef5bb47
姓名 jack
成績 B
課次 1
學校 oldboy
性別 F


班級 16
uid cc151d309c4d50e516b0eb4cc1257c1c
姓名 wangeq
成績 A
課次 1
學校 oldboy
性別 F



        ------- 歡迎進入講師視圖 ---------
              1.  創建上課記錄
            2.  創建學員成績
            3.  查看學員上課記錄
            4.  查看學員成績
            5.  返回
            
請選擇:3
<function Teacher.tacher_view_record at 0x006BDE88>
校名:oldboy
班級:16
課次:1
班級 16
uid 4617ecffc46045db1bf14529aef5bb47
姓名 jack
課次 1
學校 oldboy
上課情況 chuqin
性別 F


班級 16
uid cc151d309c4d50e516b0eb4cc1257c1c
姓名 wangeq
課次 1
學校 oldboy
上課情況 queqin
性別 F



        ------- 歡迎進入講師視圖 ---------
              1.  創建上課記錄
            2.  創建學員成績
            3.  查看學員上課記錄
            4.  查看學員成績
            5.  返回
            
請選擇:4
<function Teacher.teacher_view_grade at 0x006BDE40>
校名:oldboy
班級:16
課次:1
班級 16
uid 4617ecffc46045db1bf14529aef5bb47
姓名 jack
成績 B
課次 1
學校 oldboy
性別 F


班級 16
uid cc151d309c4d50e516b0eb4cc1257c1c
姓名 wangeq
成績 A
課次 1
學校 oldboy
性別 F



        ------- 歡迎進入講師視圖 ---------
              1.  創建上課記錄
            2.  創建學員成績
            3.  查看學員上課記錄
            4.  查看學員成績
            5.  返回
            
請選擇:5

        ------- 歡迎進入選課系統 ---------
         1.  學生視圖
        2.  講師視圖
        3.  管理視圖
        4.  退出

學生視圖:
        ------- 歡迎進入選課系統 ---------
         1.  學生視圖
        2.  講師視圖
        3.  管理視圖
        4.  退出
        
請選擇視圖:1

        ------- 歡迎進入學生管理視圖 ---------
         1.  注冊
        2.  交學費
        3.  查看上課記錄
        4.  查看作業成績
        5.  返回
        
請選擇:1
歡迎進入學生注冊系統
注冊姓名:wangeq
性別:F
學校:oldboy
班級:16
------- student 創建成功 -------
uid :     3fefbe9155d868ebea7cc7aa56f714e5
班級 :     16
姓名 :     wangeq
學校 :     oldboy
性別 :     F

        ------- 歡迎進入學生管理視圖 ---------
         1.  注冊
        2.  交學費
        3.  查看上課記錄
        4.  查看作業成績
        5.  返回
        
請選擇:3
校名:oldboy
班級:16
課次:1
姓名:wangeq
上課情況 queqin
uid cc151d309c4d50e516b0eb4cc1257c1c
班級 16
姓名 wangeq
學校 oldboy
課次 1
性別 F



        ------- 歡迎進入學生管理視圖 ---------
         1.  注冊
        2.  交學費
        3.  查看上課記錄
        4.  查看作業成績
        5.  返回
        
請選擇:4
校名:oldboy
班級:16
課次:1
姓名:wangeq
uid cc151d309c4d50e516b0eb4cc1257c1c
班級 16
姓名 wangeq
學校 oldboy
課次 1
性別 F
成績 A



        ------- 歡迎進入學生管理視圖 ---------
         1.  注冊
        2.  交學費
        3.  查看上課記錄
        4.  查看作業成績
        5.  返回
        
請選擇:5

        ------- 歡迎進入選課系統 ---------
         1.  學生視圖
        2.  講師視圖
        3.  管理視圖
        4.  退出

#代碼不是很完整,后續會進行改進

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM