• 面向对象plus练习


    #uuid不会啊
    import pickle
    import uuid
    class School:
    name_school='oldboy'
    def __init__(self, name, address):
    self.uuid=uuid.uuid4()
    self.sch_name=name
    self.sch_address=address
    self.classes = []

    def tell_sch_info(self):
    print('学校信息:校区:%s 地址:%s' %(
    self.sch_name,
    self.sch_address
    ))

    def related_class(self,schcla_obj):
    self.classes.append(schcla_obj)

    def tell_class(self):
    self.tell_sch_info()
    for schcla_obj in self.classes:
    schcla_obj.tell_scs_info()

    # sch_obj1=School('上海','虹桥')
    # sch_obj2=School('上海','张江')
    # sch_obj3=School('北京','五道口')
    # sch_obj1.tell_sch_info()
    # sch_obj2.tell_sch_info()
    # sch_obj3.tell_sch_info()

    class SchoolClass:

    def __init__(self,name):
    self.uuid = uuid.uuid4()
    self.schcla_name = name
    self.course=[]

    def related_course(self, cou_obj):
    self.course.append(cou_obj)

    def tell_scs_info(self):
    print('班级名称:%s' % (
    self.schcla_name,
    ))
    for cou_obj in self.course:
    cou_obj.tell_course_info()

    # schcla_obj1=SchoolClass('python十一期')
    # schcla_obj2=SchoolClass('python十二期')
    # sch_obj1=School('上海','虹桥')
    # sch_obj1.related_class(schcla_obj1)
    # sch_obj1.related_class(schcla_obj2)
    # sch_obj1.tell_class()

    class Course:

    def __init__(self, name,price,cycle):
    self.uuid = uuid.uuid4()
    self.cou_name=name
    self.cou_price=price
    self.cou_cycle=cycle
    self.cou_teach=[]

    def related_teach(self, tea_obj):
    self.cou_teach.append(tea_obj)

    def tell_course_info(self):
    print('课程信息:名字:%s 价格:%s 周期:%s' %(
    self.cou_name,
    self.cou_price,
    self.cou_cycle
    ))
    for tea_obj in self.cou_teach:
    tea_obj.tell_info()

    # cou_obj1=Course('Python',20000,6)
    # cou_obj2=Course('Linux',20000,6)
    # sch_obj1=School('上海','虹桥')
    # schcla_obj1=SchoolClass('python十一期')
    # sch_obj1.related_class(schcla_obj1)
    # schcla_obj1.related_course(cou_obj1)
    # schcla_obj1.related_course(cou_obj2)
    # sch_obj1.tell_class()

    class Teacher:
    school_teach='oldboy'

    def __init__(self, x,y,z):
    self.uuid = uuid.uuid4()
    self.tea_age=x
    self.tea_salary=y
    self.tea_level=z

    def tell_info(self):
    print('教师信息:名字:%s 薪资:%s 等级:%s' %(
    self.tea_age,
    self.tea_salary,
    self.tea_level
    ))

    # tea_obj1=Teacher('lxx',20000,6)
    # tea_obj2=Teacher('egon',50000,10)
    # tea_obj3=Teacher('tank',20000,6)
    #
    # sch_obj1=School('上海','虹桥')
    # schcla_obj1=SchoolClass('python十一期')
    # cou_obj1=Course('Python',20000,6)
    # sch_obj1.related_class(schcla_obj1)
    # schcla_obj1.related_course(cou_obj1)
    # cou_obj1.related_teach(tea_obj1)
    # cou_obj1.related_teach(tea_obj2)
    # cou_obj1.related_teach(tea_obj3)
    # sch_obj1.tell_class()

    class Student:

    def __init__(self,name,age,gender,number):
    self.stu_name=name
    self.stu_age=age
    self.stu_gender=gender
    self.stu_number=number
    self.course = None

    def related_school(self, sch_obj):
    self.course=sch_obj

    def tell_stu_info(self):
    print('学生信息:名字:%s 年龄:%s 性别:%s 学号:%s' %(
    self.stu_name,
    self.stu_age,
    self.stu_gender,
    self.stu_number
    ))
    self.course.tell_class()

    stu1_obj=Student('tank',18,'male',111)
    stu2_obj=Student('lili',19,'female',222)
    stu3_obj=Student('jack',20,'male',333)

    tea_obj1=Teacher('lxx',20000,6)

    sch_obj1=School('上海','虹桥')
    schcla_obj1=SchoolClass('python十一期')
    cou_obj1=Course('Python',20000,6)
    stu1_obj.related_school(sch_obj1)
    sch_obj1.related_class(schcla_obj1)
    schcla_obj1.related_course(cou_obj1)
    cou_obj1.related_teach(tea_obj1)
    stu1_obj.tell_stu_info()

    with open('student.pickle', 'wb') as f1:
    pickle.dump(stu1_obj.tell_stu_info(), f1)

    with open('student.pickle', 'rb') as f2:
    info=pickle.load(f2)

    print(info)
  • 相关阅读:
    HA: Chakravyuh Vulnhub Walkthrough
    HA Rudra: Vulnhub Walkthrough
    关于Fastjson 1.2.24 反序列化导致任意命令执行漏洞
    关于MySQL注入漏洞到获取webshell
    Windows宏病毒利用
    常规高危端口
    HA Joker Vulnhub Walkthrough
    面试题:对Vue的响应式数据/双向数据绑定原理的理解
    面试题: 对MVVN的理解
    面试题:localStorage、sessionStorage、Cookie的区别详解
  • 原文地址:https://www.cnblogs.com/0B0S/p/12662431.html
Copyright © 2020-2023  润新知