zoukankan      html  css  js  c++  java
  • 2019年7月31日 选课系统

     import pickle

    
    
    import pickle
    class Base:
        def save(self,address):
            with open(address,'wb')as f:#wb 写入字符串
                pickle.dump(self,f)#注意这里用self 代表实例化后的自身
    
    class School(Base):
        def __init__(self):
            self.name=input('请输入新学校%s名字:'%i)
            self.addr=input('请输入学校%s地址:'%i)
    
    class Lesson(Base):
        def __init__(self,name,school):
            self.name=name
            self.school=school
    
    
    class Teacher(Base):
        def __init__(self,name,school,lesson):
            self.name=name
            self.school=school
            self.lesson=lesson
    
    msg='1.创建学校
    ' 
        '2.创建课程
    ' 
        '3.创建老师
    ' 
        '4.exit
    '
    s_info=[]
    l_info=[]
    i,j,k=0,0,0
    while True:
        print(msg)
        choice=input('请输入需要创建的内容:')
        if choice=='1':
            i=i+1
            s_info.append(School())
            s_info[i-1].save('school%s.db'%i) #保存在文档内
            school_obj=pickle.load(open('school%s.db'%i,'rb'))
            print(i,school_obj.addr)
    
        elif choice=='2':
            j=j+1
            lesson_name=input('请输入课程%s名称:'%j)
            if lesson_name=='python' or lesson_name=='linux':
                l1=Lesson(lesson_name,pickle.load(open('school1.db','rb')))
                l1.save('lesson%s.db'%j)
                print(j,l1.school.addr)
            elif lesson_name=='go':
                l2=Lesson(lesson_name,pickle.load(open('school2.db','rb')))
                l2.save('lesson%s.db'%j)
                print(j,l2.school.addr)
            else:
                print('只能创建python,linux,go三门课程')
                j=j-1 #如果输入错误j会自动+1,所以需要对j做修正
    
        elif choice=='3':
            k=k+1
            if k>2:
                print('只要2位老师')
                exit()
            else:
                teacher_name = input('请输入老师%s姓名:' % k)
                t = Teacher(teacher_name, pickle.load(open('school%s.db'%k,'rb')), pickle.load(open('lesson%s.db' % k, 'rb')))
                t.save('teacher%s.db'%k)
                print(k,pickle.load(open('teacher%s.db'%k,'rb')).__dict__)
        elif choice=='4':
            print('game over')
            exit()
        else:
            print('请输入1,2,3,4
    ')
    
    
    
     

    》》》》》 

    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:1
    请输入新学校1名字:newboy
    请输入学校1地址:shanghai
    1 shanghai
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:1
    请输入新学校2名字:oldboy
    请输入学校2地址:beijing
    2 beijing
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:2
    请输入课程1名称:python
    1 shanghai
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:linux
    请输入1,2,3,4

    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:2
    请输入课程2名称:linux
    2 shanghai
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:2
    请输入课程3名称:go
    3 beijing
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:2
    请输入课程4名称:ada
    只能创建python,linux,go三门课程
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:3
    请输入老师1姓名:sxj
    1 {'name': 'sxj', 'school': <__main__.School object at 0x0388B6B0>, 'lesson': <__main__.Lesson object at 0x0388B730>}
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:3
    请输入老师2姓名:zyk
    2 {'name': 'zyk', 'school': <__main__.School object at 0x0388B5D0>, 'lesson': <__main__.Lesson object at 0x0388B650>}
    1.创建学校
    2.创建课程
    3.创建老师
    4.exit

    请输入需要创建的内容:3
    只要2位老师

  • 相关阅读:
    课堂作业
    读书计划
    软件工程----11软件演化
    软件工程----10软件测试
    软件工程概论第五章--软件工程中的形式化方法
    软件工程概论第四章--需求工程
    软件工程概论第三章--软件项目管理
    软件工程概论第二章--软件过程
    软件工程概论第一章--概述
    在jsp里面如何用按钮跳转(转自http://oracleabc-126-com.iteye.com/blog/941739)自己留着学
  • 原文地址:https://www.cnblogs.com/python1988/p/11279070.html
Copyright © 2011-2022 走看看