欢迎访问宙启技术站
智能推送

用Python编写一个简单的学生信息管理系统

发布时间:2023-12-04 15:38:02

下面是一个简单的学生信息管理系统的Python代码,包含了学生的基本信息(姓名、学号、性别、年龄、成绩)管理功能,可以添加、删除、查询和修改学生信息。

class Student:
    def __init__(self, name, student_id, gender, age, score):
        self.name = name
        self.student_id = student_id
        self.gender = gender
        self.age = age
        self.score = score

class StudentManagementSystem:
    def __init__(self):
        self.students = []

    def add_student(self, student):
        self.students.append(student)
        print("学生信息添加成功!")

    def delete_student(self, student_id):
        for student in self.students:
            if student.student_id == student_id:
                self.students.remove(student)
                print("学生信息删除成功!")
                return
        print("学生信息不存在!")

    def search_student(self, student_id):
        for student in self.students:
            if student.student_id == student_id:
                print("学生姓名:", student.name)
                print("学生学号:", student.student_id)
                print("学生性别:", student.gender)
                print("学生年龄:", student.age)
                print("学生成绩:", student.score)
                return
        print("学生信息不存在!")

    def modify_student(self, student_id, info_type, new_info):
        for student in self.students:
            if student.student_id == student_id:
                if info_type == "name":
                    student.name = new_info
                elif info_type == "gender":
                    student.gender = new_info
                elif info_type == "age":
                    student.age = new_info
                elif info_type == "score":
                    student.score = new_info
                print("学生信息修改成功!")
                return
        print("学生信息不存在!")

if __name__ == "__main__":
    sms = StudentManagementSystem()
    while True:
        print("学生信息管理系统")
        print("1. 添加学生信息")
        print("2. 删除学生信息")
        print("3. 查询学生信息")
        print("4. 修改学生信息")
        print("5. 退出")
        choice = input("请选择操作(输入数字):")
        if choice == "1":
            name = input("请输入学生姓名:")
            student_id = input("请输入学生学号:")
            gender = input("请输入学生性别:")
            age = input("请输入学生年龄:")
            score = input("请输入学生成绩:")
            student = Student(name, student_id, gender, age, score)
            sms.add_student(student)
        elif choice == "2":
            student_id = input("请输入要删除的学生学号:")
            sms.delete_student(student_id)
        elif choice == "3":
            student_id = input("请输入要查询的学生学号:")
            sms.search_student(student_id)
        elif choice == "4":
            student_id = input("请输入要修改的学生学号:")
            info_type = input("请输入要修改的信息类型(name/gender/age/score):")
            new_info = input("请输入新的信息:")
            sms.modify_student(student_id, info_type, new_info)
        elif choice == "5":
            print("退出学生信息管理系统!")
            break
        else:
            print("无效的选择!请重新输入。")

上述代码定义了两个类,Student类用于表示学生的基本信息,StudentManagementSystem类用于管理学生信息。StudentManagementSystem类包含了添加学生信息、删除学生信息、查询学生信息和修改学生信息的方法。

在主函数部分,创建了一个StudentManagementSystem对象sms,并通过循环提供了学生信息管理系统的菜单选项,根据用户的选择调用相应的方法进行操作。

使用该学生信息管理系统的例子如下:

学生信息管理系统
1. 添加学生信息
2. 删除学生信息
3. 查询学生信息
4. 修改学生信息
5. 退出
请选择操作(输入数字):1
请输入学生姓名:张三
请输入学生学号:1001
请输入学生性别:男
请输入学生年龄:18
请输入学生成绩:90
学生信息添加成功!

学生信息管理系统
1. 添加学生信息
2. 删除学生信息
3. 查询学生信息
4. 修改学生信息
5. 退出
请选择操作(输入数字):3
请输入要查询的学生学号:1001
学生姓名: 张三
学生学号: 1001
学生性别: 男
学生年龄: 18
学生成绩: 90

学生信息管理系统
1. 添加学生信息
2. 删除学生信息
3. 查询学生信息
4. 修改学生信息
5. 退出
请选择操作(输入数字):4
请输入要修改的学生学号:1001
请输入要修改的信息类型(name/gender/age/score):score
请输入新的信息:95
学生信息修改成功!

学生信息管理系统
1. 添加学生信息
2. 删除学生信息
3. 查询学生信息
4. 修改学生信息
5. 退出
请选择操作(输入数字):3
请输入要查询的学生学号:1001
学生姓名: 张三
学生学号: 1001
学生性别: 男
学生年龄: 18
学生成绩: 95

学生信息管理系统
1. 添加学生信息
2. 删除学生信息
3. 查询学生信息
4. 修改学生信息
5. 退出
请选择操作(输入数字):2
请输入要删除的学生学号:1001
学生信息删除成功!

学生信息管理系统
1. 添加学生信息
2. 删除学生信息
3. 查询学生信息
4. 修改学生信息
5. 退出
请选择操作(输入数字):3
请输入要查询的学生学号:1001
学生信息不存在!

学生信息管理系统
1. 添加学生信息
2. 删除学生信息
3. 查询学生信息
4. 修改学生信息
5. 退出
请选择操作(输入数字):5
退出学生信息管理系统!

以上就是一个简单的学生信息管理系统的Python代码和使用例子。