Python 简易版选课系统

一、创建学生类

# # 创建学生类
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

Python 简易版选课系统的相关文章

简易版支付系统部署(单节点) 吴水成

一.前期准备 1.MySQL数据库的安装:MySQL-5.6.22,自行安装 2.Dubbo视频教程--基础篇--第03节--ZooKeeper注册中心安装 3.Dubbo视频教程--基础篇--第06节--Dubbo管理控制台的安装 4.Dubbo视频教程--基础篇--第10节--Dubbo监控中心的介绍与简易监控中心的安装 5.持续集成管理平台(SVN.Nexus.Maven.Hudson)的安装: Dubbo视频教程--基础篇--第11节至18节 6.Dubbo视频教程--高级篇--第21节

Dubbo高级篇教程--支付系统开发 之 简易版支付系统部署(单节点)

一.前期准备 1.MySQL数据库的安装:MySQL-5.6.22,自行安装 2.Dubbo视频教程--基础篇--第03节--ZooKeeper注册中心安装 3.Dubbo视频教程--基础篇--第06节--Dubbo管理控制台的安装 4.Dubbo视频教程--基础篇--第10节--Dubbo监控中心的介绍与简易监控中心的安装 5.持续集成管理平台(SVN.Nexus.Maven.Hudson)的安装: Dubbo视频教程--基础篇--第11节至18节 6.Dubbo视频教程--高级篇--第21节

支付系统开发--简易版支付系统部署(单节点)

一.前期准备 1.MySQL数据库的安装:MySQL-5.6.22,自行安装 2.Dubbo视频教程--基础篇--第03节--ZooKeeper注册中心安装 3.Dubbo视频教程--基础篇--第06节--Dubbo管理控制台的安装 4.Dubbo视频教程--基础篇--第10节--Dubbo监控中心的介绍与简易监控中心的安装 5.持续集成管理平台(SVN.Nexus.Maven.Hudson)的安装: Dubbo视频教程--基础篇--第11节至18节 6.Dubbo视频教程--高级篇--第21节

python面向对象练习--选课系统

这几天学完面向对象,然后找了一个练习做(题目如下):因为刚刚接触编程,可能有很多方面考虑得不周到 目录如下: import os import sys BASEDIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) sys.path.append(BASEDIR) from core.admin_view import admin_main from lib.public_func import instanc from

python练习——moudule03——选课系统

开发简单的FTP:1. 用户登陆2. 上传/下载文件put/get3. 不同用户家目录不同home4. 查看当前目录下文件ls5. 充分使用面向对象知识 目录: 1 import os,socket,optparse,json,time 2 3 STATUS_CODE ={ 4 200 : "操作成功", 5 601 : '操作失败' 6 } 7 8 class FTPClient(object): 9 def __init__(self): 10 self.parser = optp

安装了简易版XP系统后不能安装IIS的解决办法

第一步 找到C:\WINDOWS\inf文件夹中的sysoc.inf文件,在 [Components]区域中的NetOC=netoc.dll,NetOcSetupProc,netoc.inf,,7和com=comsetup.dll,OcEntry,comnt5.inf,hide,7 之间加入下面一段:iis=iis.dll,OcEntry,iis.inf,,7保存文件. 第二步 从IIS安装包中提取以下两个文件添加到对应的操作系统文件目录中. iis.inf 添加到 C:/windows/inf

第三方支付系统简易版部署文档

一.前期准备1.MySQL数据库的安装:MySQL-5.6.22,自行安装2.Dubbo视频教程--基础篇--第03节--ZooKeeper注册中心安装3.Dubbo视频教程--基础篇--第06节--Dubbo管理控制台的安装4.Dubbo视频教程--基础篇--第10节--Dubbo监控中心的介绍与简易监控中心的安装5.持续集成管理平台(SVN.Nexus.Maven.Hudson)的安装:Dubbo视频教程--基础篇--第11节至18节 6.Dubbo视频教程--高级篇--第21节--Acti

Python开发程序:选课系统-改良版

程序名称: 选课系统 角色:学校.学员.课程.讲师要求:1. 创建北京.上海 2 所学校2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开3. 课程包含,周期,价格,通过学校创建课程 4. 通过学校创建班级, 班级关联课程.讲师5. 创建学员时,选择学校,关联班级6. 创建讲师角色时要关联学校, 7. 提供两个角色接口8. 学员视图, 可以注册, 交学费, 选择班级,9. 讲师视图, 讲师可管理自己的班级, 上课时选择班级, 查看班级学员

python之选课系统详解[功能未完善]

作业需求 思路:1.先写出大体的类,比如学校类,学生类,课程类--   2.写出类里面大概的方法,比如学校类里面有创建讲师.创建班级-- 3.根据下面写出大致的代码,并实现其功能       遇到的困难: 1.在类与类关联上卡住了,比如: 老师如何查看班级信息?? 老师有班级名称的属性, 而要查看班级信息,需要班级对象 那应该将老师的班级名称与班级对象相关联起来 那不同老师怎么办?? 所以学校创建 老师对象时,应该将老师名称与老师对象相关联起来 通过输入老师名称即可找到老师对象 2. 想把讲师对