【Python从入门到精通】6.0学生成绩管理系统类实现

【Python从入门到精通】6.0学生成绩管理系统类实现,第1张

学生成绩管理系统类实现

学生成绩管理系统控制台版类实现

演示视频链接
功能
1、添加学生信息
2、删除学生信息
3、查询学生信息
4、修改学生信息
5、获取所有学生信息

编程思路
1、创建StudentManage类管理学生。其中包含学生增删查改方法以及获取所有学生信息的方法
2、函数内部采用列表添加学生字典的方式储存所有学生信息。类中所有的 *** 作都围绕self.student列表
3、使用while循环不断问讯实现控制台交互
4、使用1-6的选择模式进行相关系统 *** 作,不同 *** 作对应不同的类中函数

import time

class StudentManage:

    def __init__(self):
        self.student = list()

    def add(self, id, name, math, english, python):
        self.student.append({'id': id, 'name': name, 'math': math, 'english': english, 'python': python})
        return '添加成功'

    def update(self, id, project, value):
        for i in self.student:
            if i['id'] == id:
                exec(f'i["{project}"]={value}')
                return '修改成功'
        return '没有找到该学生'

    def delete(self, id):
        for index in range(len(self.student)):
            if self.student[index]['id'] == id:
                self.student.pop(index)
                return '删除成功'
        return '没有找到该学生'

    def query(self, id):
        for i in self.student:
            if i['id'] == id:
                return '学号:%s,姓名:%s,数学:%s,英语:%s,python:%s' % tuple(i.values())
        return '没有找到该学生'

    def getall(self):
        return self.student


stu = StudentManage()
while 1:
    print('''
    1、添加学生信息
    2、删除学生信息
    3、查询某学生信息
    4、修改学生信息
    5、获取所有学生信息
    6、退出
    ''')
    n = input('请输入你的选项')
    if n not in ['1', '2', '3', '4', '5', '6']: print('你输入的选项不正确');time.sleep(1);continue
    if n == '1':
        print(stu.add(*[input('请输入要录入的学生学号:'), input('姓名:'), input('数学:'), input('英语:'), input('python:')]))
    elif n == '2':
        print(stu.delete(input('请输入要删除的学生学号:')))
    elif n == '3':
        print(stu.query(input('请输入要查询的学生学号:')))
    elif n == '4':
        print(stu.update(*[input('请输入要查修改询的学生学号:'), input('科目(math\english\python):'), input('值:')]))
    elif n == '5':
        for i in stu.getall():
            print('学号:%s,姓名:%s,数学:%s,英语:%s,python:%s' % tuple(i.values()))
    elif n == '6':
        break

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/876144.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存