一、创建学生类
# # 创建学生类 import random class Student: def __init__(self,num,name,address,course_lst=None): self.num=num self.name=name self.address=address if course_lst: self.cous_lst=cous_lst else: self.cous_lst=[] def look(self): #查看学生所有的课程信息 print("%s学生的选课信息:"%self.name)#输出信息提示 for el in self.cous_lst: print(el.name,end=" ") print() def adds(self,s):#学生添加课程 self.cous_lst.append(s)
二、创建课程类
# 创建课程类 class Course: def __init__(self,num,name,teacher=None): self.num = num self.name = name self.teacher=teacher def look(self):#查看课程信息 return "课程编号: %s ,课程名称: %s ,课程老师: %s " %(self.num,self.name,self.teacher) def sett(self,t):#给课程添加老师 self.teacher=t
三、创建教师类
# 创建教师类 class Teacher: def __init__(self,num,name,phone): self.num = num self.name = name self.phone=phone
四、创建6个老师
# 创建6个老师 t1=Teacher("N01","寒冰",10086) t2=Teacher("N02","疾风剑豪",10387) t3=Teacher("N03","瞎子",10088) t4=Teacher("N04","机器人",10536) t5=Teacher("N05","德玛西亚",24550) t6=Teacher("N06","武器",10089)
五、创建6门课程
# 创建6门课程 c1=Course("KS01","上单") c2=Course("KS02","中单") c3=Course("KS03","下路AD") c4=Course("KS04","辅助") c5=Course("KS05","打野") c6=Course("KS06","日中天") c_lst=[c1,c2,c3,c4,c5,c6]
六、给课程安排老师
# 给课程安排老师 c1.sett(t6) c2.sett(t2) c3.sett(t1) c4.sett(t4) c5.sett(t3) c6.sett(t5)
七、定义随机数函数
# 创建随机产生3个[0:5]不重复的数字 import random def rand(): lst=[] while len(lst)<3: lst.append(random.randint(0,5)) s=set(lst) lst=list(s) return lst
八、创建30个学生
lst=[Student("N%s"%i,"学生%s号"%i,"清华路%s号"%i)for i in range(30)]
九、学生开始选课
for el in lst: r=rand() for el2 in r:#[1,3,5] el.adds(c_lst[el2])
十、显示学生的选课信息
for el in lst: el.look()
结果显示
学生0号学生的选课信息: 辅助 打野 日中天 学生1号学生的选课信息: 中单 辅助 打野 学生2号学生的选课信息: 上单 下路AD 打野 学生3号学生的选课信息: 中单 下路AD 辅助 学生4号学生的选课信息: 上单 中单 下路AD 学生5号学生的选课信息: 上单 下路AD 打野 学生6号学生的选课信息: 上单 下路AD 辅助 学生7号学生的选课信息: 辅助 打野 日中天 学生8号学生的选课信息: 辅助 打野 日中天 学生9号学生的选课信息: 中单 打野 日中天 学生10号学生的选课信息: 上单 下路AD 日中天 学生11号学生的选课信息: 中单 下路AD 辅助 学生12号学生的选课信息: 中单 辅助 打野 学生13号学生的选课信息: 中单 打野 日中天 学生14号学生的选课信息: 上单 下路AD 辅助 学生15号学生的选课信息: 上单 打野 日中天 学生16号学生的选课信息: 上单 打野 日中天 学生17号学生的选课信息: 上单 下路AD 辅助 学生18号学生的选课信息: 上单 中单 日中天 学生19号学生的选课信息: 上单 辅助 日中天 学生20号学生的选课信息: 下路AD 打野 日中天 学生21号学生的选课信息: 上单 中单 打野 学生22号学生的选课信息: 上单 中单 辅助 学生23号学生的选课信息: 上单 中单 打野 学生24号学生的选课信息: 辅助 打野 日中天 学生25号学生的选课信息: 中单 下路AD 辅助 学生26号学生的选课信息: 上单 中单 日中天 学生27号学生的选课信息: 上单 中单 下路AD 学生28号学生的选课信息: 上单 中单 日中天 学生29号学生的选课信息: 中单 下路AD 打野
原文地址:https://www.cnblogs.com/angle6-liu/p/9937224.html
时间: 2024-10-15 23:51:49