zoukankan      html  css  js  c++  java
  • python学习之面向对象基础作业

    选课系统项目中涉及到诸多数据与功能,要求引入面向对象的思想对其进行高度整合
    1、学校数据与功能整合
    2、课程数据与功能进行整合
    3、学生数据与功能进行整合
    4、讲师数据与功能进行整合
    5、班级数据与功能进行整合
    ps:不会写的同学,可以先用普通的方式,先把数据与功能都给写好,再考虑基于面向对象的思想进行整合

    数据部分:
    校区的名字:如"老男孩上海校区"
    校区的地址:如"上海虹桥"

    ​ 班级名字
    ​ 班级所在校区

    ​ 学生的学校
    ​ 学生的姓名
    ​ 学生的年龄
    ​ 学号
    ​ 学生的性别

    ​ 课程名字
    ​ 课程周期
    ​ 课程价格

    ​ 老师的名字
    ​ 老师的年龄
    ​ 老师的薪资
    ​ 老师的等级

    功能部分:
    校区创建完毕后,可以为每个校区创建班级

    ​ 班级创建完毕后,可以为每个班级创建课程

    ​ 学生创建完毕后,学生可以选择班级

    ​ 老师创建完毕后,可以为学生打分

    class School():
    
        School_name = 'OLD BOY'
        def __init__(self,area_name,address):
            self.area_name = area_name
            self.address = address
    
        def make_class(self,class_name):
            return Class(self.area_name,self.address,class_name)
    
    class Class(School):
    
        def __init__(self,area_name,address,name):
    
            super().__init__(area_name,address)
            self.name = name
    
        def show_class_info(self):
            print('area_name:{},class_name:{}'.format(self.area_name,self.name))
    
        def make_course(self,course_name,period,price):
            return Course(course_name,period,price)
    
    class Course():
    
        def __init__(self,name,period,price):
            self.name = name
            self.period = period
            self.price = price
    
        def show_course_info(self):
            print('''
            课程名:%s
            课程周期:%s
            课程价格:%s
            '''%(self.name,self.period,self.price)
            )
    
    class Student():
    
        def __init__(self,school_name,name,age,sex,num):
            self.school_name = school_name
            self.name = name
            self.age = age
            self.sex = sex
            self.num = num
    
        def select_class(self):
    
            self.class_name = '老男孩上海校区py脱产14期'
            print('你选择成为[%s]中的一员'%self.class_name)
    
    class Teacher():
    
        def __init__(self,name,age,salary,level):
            self.name = name
            self.age = age
            self.salary = salary
            self.level = level
    
        def make_score(self,stu_name):
    
            print('[%s]老师给学生[%s]打了100分。'%(self.name,stu_name))
    
    
    sch1 = School('上海校区','上海虹桥')
    class1=sch1.make_class('老男孩上海校区py脱产14期')
    
    sch2 = School('北京校区','北京朝阳')
    class2=sch2.make_class('老男孩北京校区py脱产14期')
    
    course1 = class1.make_course('python','6 mons','20000 ¥')
    course2 = class1.make_course('java','6 mons','10000 ¥')
    course3 = class1.make_course('linux','6 mons','10000 ¥')
    
  • 相关阅读:
    java监听器之实现在线人数显示
    java之web开发过滤器
    java之MVC开发模式
    java之jsp内置对象
    java之jsp页面语法
    java之jsp实现动态网页
    java数据库(MySQL)之增删改查
    java数据库之JDBC
    java线程之线程通信控制
    java线程之线程通信
  • 原文地址:https://www.cnblogs.com/leilijian/p/12657451.html
Copyright © 2011-2022 走看看