定义学生类,包含学号、姓名、班级、电话、家庭住址、宿舍号

class Student: def init(self, id, name, classname, phone, address, dorm): self.id = id self.name = name self.classname = classname self.phone = phone self.address = address self.dorm = dorm

定义管理类,包含文件名、学生列表等属性和添加、修改、删除、查找、浏览等方法

class Manage: def init(self): self.filename = 'students.txt' # 存储学生信息的文件名 self.students = [] # 学生列表

# 从文件中加载学生信息到列表中
def load_data(self):
    try:
        with open(self.filename, 'r', encoding='utf-8') as f:
            for line in f:
                line = line.strip()
                if line:
                    id, name, classname, phone, address, dorm = line.split(',')
                    student = Student(id, name, classname, phone, address, dorm)
                    self.students.append(student)
    except FileNotFoundError:
        pass

# 将学生列表中的信息保存到文件中
def save_data(self):
    with open(self.filename, 'w', encoding='utf-8') as f:
        for student in self.students:
            line = '{},{},{},{},{},{}

'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm) f.write(line)

# 添加学生信息
def add_student(self):
    id = input('请输入学号:')
    name = input('请输入姓名:')
    classname = input('请输入班级:')
    phone = input('请输入电话:')
    address = input('请输入家庭住址:')
    dorm = input('请输入宿舍号:')
    student = Student(id, name, classname, phone, address, dorm)
    self.students.append(student)
    self.save_data()
    print('添加成功!')

# 修改学生信息
def modify_student(self):
    id = input('请输入要修改信息的学生学号:')
    for student in self.students:
        if student.id == id:
            print('学号	姓名	班级	电话	家庭住址	宿舍号')
            print('{}	{}	{}	{}	{}	{}'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm))
            choice = input('请选择要修改的信息(1-班级 2-电话 3-家庭住址 4-宿舍号 0-取消):')
            if choice == '1':
                classname = input('请输入新的班级:')
                student.classname = classname
                self.save_data()
                print('修改成功!')
            elif choice == '2':
                phone = input('请输入新的电话:')
                student.phone = phone
                self.save_data()
                print('修改成功!')
            elif choice == '3':
                address = input('请输入新的家庭住址:')
                student.address = address
                self.save_data()
                print('修改成功!')
            elif choice == '4':
                dorm = input('请输入新的宿舍号:')
                student.dorm = dorm
                self.save_data()
                print('修改成功!')
            elif choice == '0':
                print('取消修改!')
            else:
                print('输入有误!')
            return
    print('没有找到该学生!')

# 删除学生信息
def delete_student(self):
    id_or_name = input('请输入要删除信息的学生学号或姓名:')
    for student in self.students:
        if student.id == id_or_name or student.name == id_or_name:
            self.students.remove(student)
            self.save_data()
            print('删除成功!')
            return
    print('没有找到该学生!')

# 查找学生信息
def search_student(self):
    id_or_name = input('请输入要查找信息的学生学号或姓名:')
    for student in self.students:
        if student.id == id_or_name or student.name == id_or_name:
            print('学号	姓名	班级	电话	家庭住址	宿舍号')
            print('{}	{}	{}	{}	{}	{}'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm))
            return
    print('没有找到该学生!')

# 浏览所有学生信息
def show_students(self):
    print('学号	姓名	班级	电话	家庭住址	宿舍号')
    for student in self.students:
        print('{}	{}	{}	{}	{}	{}'.format(student.id, student.name, student.classname, student.phone, student.address, student.dorm))

# 启动管理系统
def start(self):
    self.load_data()
    while True:
        print('===== 学生信息管理系统 =====')
        print('1. 录入学生信息')
        print('2. 修改学生信息')
        print('3. 删除学生信息')
        print('4. 查找学生信息')
        print('5. 浏览所有学生信息')
        print('6. 退出系统')
        choice = input('请选择功能(1-6):')
        if choice == '1':
            self.add_student()
        elif choice == '2':
            self.modify_student()
        elif choice == '3':
            self.delete_student()
        elif choice == '4':
            self.search_student()
        elif choice == '5':
            self.show_students()
        elif choice == '6':
            confirm = input('确定退出系统吗?(y/n):')
            if confirm == 'y':
                print('谢谢使用!')
                break
        else:
            print('输入有误!')

if name == 'main': manage = Manage() manage.start()

Python 学生信息管理系统:添加、修改、删除、查找、浏览功能

原文地址: https://www.cveoy.top/t/topic/oyzj 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录