第七周作业--学生信息管理系统--学生综测管理系统

42 篇文章 0 订阅
39 篇文章 0 订阅

1、学生信息管理

"""
1、首先确定学生的信息,以字典里面嵌套列表的形式存储查找的时候按照学号查找;
2、系统以菜单的方式进行工作
"""
from operator import itemgetter
class StudentA:
    def __init__(self):
        self.Info = {}
        self.student_info = []
    def input_info(self):
        self.number = input('请输入要录入学生的学号:')
        self.name = input('请输入要录入学生的姓名:')
        self.age = input('请输入要录入学生的年龄:')
        self.gender = input('请输入要录入学生性别:')
        self.date = input('请输入要录入学生的出生年月:')
        self.site = input('请输入要录入学生的地址:')
        self.phone = input('请输入要录入学生的电话:')
        self.E_mail = input('请输入要录入学生的E-mail:')
        self.Info['number'] = self.number
        self.Info['name'] = self.name
        self.Info['age'] = self.age
        self.Info['gender'] = self.gender
        self.Info['date'] = self.date
        self.Info['site'] = self.site
        self.Info['phone'] = self.phone
        self.Info['E-mail'] = self.E_mail
        self.student_info.append(self.Info)
    def save(self):
        str_Info = str(self.student_info)
        with open('student_info1','a') as f:
            f.write(str_Info)
class StudentB(StudentA):
    def In_info(self):
        key = int(input('请输入查询和排序的条件:1:按照学号;2:按照姓名:'))
        if key == 1:
            key_gender = input('请输入查询学生的学号;')
            i = 0
            num = 0
            for item in a:
                if item['number'] == key_gender:
                    i = 1
                    break
                else:
                    num += 1
            print(i)
            if i == 0:
                print('没有这个学生!')
            else:
                print('查询学生信息如下:%s %s %s %s %s %s %s %s'%(item['name'],item['number'],item['age'],item['gender'],item['date'],item['site'],item['phone'],item['E-mail']))
            for i in a:
                sort_info = sorted(i, key=itemgetter('number'))
                print(sort_info)
        if key == 2:
            key_name = input('请输入查询学生的姓名:')
            i = 0
            num = 0
            for item in a:
                if item['name'] == key_name:
                    i = 1
                else:
                    num += 1
            if i == 0:
                print('该学生信息不存在')
            else:
                print('查询学生信息如下:%s %s %s %s %s %s %s %s' % (
                item['name'], item['number'], item['age'], item['gender'], item['date'], item['site'], item['phone'],
                item['E-mail']))
            for j in a:
                sort_info = sorted(j, key=itemgetter('gender'))
                print(sort_info)
    def del_Info(self):
        del_info = input('请输入要删除学生的学号:')
        num = 0
        leap = 0
        for item in b:
            if item['number'] == del_info:
                leap = 1
            else:
                num += 1
        if leap == 0:
            print('学生信息不存在!')
        else:
            del b[num]
            print('删除成功')
class Menu:
    # 输出要执行的菜单
    print('*' * 30)
    print('---学生管理系统---')
    print('1:录入学生信息')
    print('2:显示所有学生信息')
    print('3:按照学生信息查询')
    print('4:删除学生信息')
    print('5:退出系统')
    print('*' * 30)
if __name__=='__main__':
    studenta = StudentA()
    studentb = StudentB()
    while True:
        menu = Menu()
        fun = int(input('请输入要进行的操作'))
        if fun == 1:
            studenta.input_info()
            studenta.save()
        elif fun == 2:
            print('查询结果为:',studenta.student_info)
        elif fun == 3:
            a = studenta.student_info
            studentb.In_info()
        elif fun == 4:
            b = studenta.student_info
            studentb.del_Info()
        elif fun == 5:
            break



2、学生综合测评系统

"""
1、创建两个类(
1)学生信息处理 :其中包括输入学生信息、插入(修改学生信息)、删除学生信息、浏览学生信息


2)学生数据处理:按考试科目录入学生成绩并且按公式(先把学生信息读入数组,然后按照提示输入每科成绩,计算考试成绩,求出名次,最后把学生记录写入一个文件中)、输入成绩并计算综合测评总分名次、学生数据管理、学生数据查询、学生综合信息输出

)
"""
from operator import itemgetter

class Student_infoA:
    def __init__(self):
        self.Info = {}
        self.student_info = []
    def input_info(self):
        self.number = input('请输入要录入学生的学号:')
        self.name = input('请输入要录入学生的姓名:')
        self.gender = input('请输入要录入学生性别:')
        self.site = input('请输入要录入学生的地址:')
        self.phone = input('请输入要录入学生的电话:')
        self.Info['number'] = self.number
        self.Info['name'] = self.name
        self.Info['gender'] = self.gender
        self.Info['site'] = self.site
        self.Info['phone'] = self.phone
        self.student_info.append(self.Info)
    def save(self):
        sort_info = sorted(self.student_info,key=itemgetter('number'))
        str_Info = str(sort_info)
        with open('student_info2', 'a') as f:
            f.write(str_Info)
class Student_infoB(Student_infoA):
    def in_info(self):
        pass
    def del_info(self):
        input_number = input('请输入要删除的学生的学号:')
        j = 0
        leap = 0
        for item in b:
            if item['number'] == input_number:
                j = 1
            else:
                leap += 1
        if j == 1:
            del b[leap]
            print('删除成功')
        else:
            print('学生信息不存在')
class Student_data:
    def __init__(self):
        pass
    def input_data(self):
        pass
    def age_data(self):
        pass
    def see_data(self):
        pass
class MenuA:
    # 输出要执行的菜单
    print('*' * 30)
    print('---学生综合测评系统---')
    print('学生信息处理')
    print('11:输入学生信息')
    print('12:插入学生信息')
    print('13:删除学生信息')
    print('14:查询学生信息')
    print('学生数据处理')
    print('21:学生数据管理')
    print('22:学生数据查询')
    print('23:学生综合信息输出')
    print('24:退出系统')
    print('*' * 30)
# if __name__=='__main__':
while True:
    studenta = Student_infoA()
    studentb = Student_infoB()
    student_data = Student_data
    menua = MenuA
    fun = int(input('请输入要执行的操作:'))
    if fun == 11:
        studenta.input_info()
        studenta.save()
    elif fun == 12:
        a = studenta.input_info()
        studentb.in_info()
    elif fun == 13:
        b = studenta.input_info()
        studentb.del_info()
    elif fun == 14:
        open('student_info2', 'r')
    elif fun ==15:
        break
    elif fun == 21:
        pass
    elif fun == 22:
        pass
    elif fun == 23:
        pass
    elif fun == 24:
            break



  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值