zoukankan      html  css  js  c++  java
  • 学生管理系统

    class Student():
    
        # 添加数据 (在原有的基础上添加, 不覆盖以前的数据)
        def add_data(self, **kwargs):
            f = open("data", "a")
            f.write(str(kwargs) + "
    ")
            f.close()
    
        # 覆盖以前的数据
        def edit_data(self, **kwargs):
            f = open("data", "w")
            f.write(str(kwargs) + "
    ")
            f.close()
    
        # 查询数据
        def check_data(self):
            f = open("data", "r")
            result = f.read()
            print(result)
            f.close()
            return result
    
        # 编辑和删除
        def edit_del_info(self, *args, **kwargs):
            result = self.check_data()
            result = result.split("
    ")
            del result[-1]
            count = True
            for info in result:
                re = eval(info)
                # 编辑数据
                if kwargs:
                    if re["num_code"] == kwargs["num_code"]:
                        re["name"] = kwargs["name"]
                        re["age"] = kwargs["age"]
                    if count:
                        self.edit_data(name=re["name"], num_code=re["num_code"], age=re["age"])
                    else:
                        self.add_data(name=re["name"], num_code=re["num_code"], age=re["age"])
                    count = False
                # 删除数据
                else:
                    if re["num_code"] != args[0]:
                        if count:
                            self.edit_data(name=re["name"], num_code=re["num_code"], age=re["age"])
                        else:
                            self.add_data(name=re["name"], num_code=re["num_code"], age=re["age"])
                        count = False
    
    
    # 开始循环 让用户选择操作
    print("欢迎使用,学员信息管理系统")
    stu = Student()
    while True:
        print("请选择您要进行的操作")
        checked = input("添加(A),修改(E),删除(D),查询(C),退出(Q):")
        checked_lower = checked.lower()
        if checked_lower == "a":
            content = input('请分别输入[学号 姓名 年龄]')
            num_code, name, age = content.split(' ')
            stu.add_data(name=name, num_code=num_code, age=age)
            print("添加学生信息成功")
        elif checked_lower == "c":
            stu.check_data()
        elif checked_lower == "e":
            content = input('请分别输入[学号 姓名 年龄]')
            num_code, name, age = content.split(' ')
            stu.edit_del_info(name=name, num_code=num_code, age=age)
            print("编辑学生信息成功")
        elif checked_lower == "d":
            num = input('请输入需要删除的学号:')
            stu.edit_del_info(num)
            print("删除学生信息成功")
        else:
            print("退出成功")
            break
            
  • 相关阅读:
    jsp中的绝对路径、相对路径和访问jsp的方式
    Java链接MySQL数据库的用配置文件和不用配置文件的代码
    易宝支付开发文档
    安装Visual Studio IntelliCode提供代码智能提示AI
    Generator生成器函数执行过程的理解
    git pull --rebase的理解
    react-native-cli运行项目及打包apk失败的解决过程
    bfc与浮动元素的关系
    触发bfc解决父子元素嵌套垂直方向margin塌陷问题
    html文本或元素6px间距问题
  • 原文地址:https://www.cnblogs.com/zhangboblogs/p/10016693.html
Copyright © 2011-2022 走看看