python 简单练习 面向对象

本文展示了一个简单的Python学生信息管理系统实现。通过面向对象编程,创建StudentManager类,包括添加、删除、修改、查询学生信息的功能。用户交互式操作,根据菜单选择相应的操作,实现了学生数据的管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

students_list = []

class StudentManager(object):

    def __init__(self):
        # 有一些全局化的变量 可以在这里声明
        # 有些独立的功能可以单独写一个函数
        pass

    def main(self):
        # 开启系统
        while True:
            self.show_menu()
            opt = input("请告诉我你的选择是:")
            if opt == "1":
                print("======= 执行添加学生信息 =======")
                self.insert_student()
            elif opt == "2":
                print("======= 执行删除学生信息 =======")
                self.remove_student()
            elif opt == "3":
                print("======= 执行修改学生信息 =======")
                self.modify_student()
            elif opt == "4":
                print("======= 执行查询单个学生信息 =======")
                self.show_single_info()
            elif opt == "5":
                print("执行查询所有学生信息")
                self.show_all_info()
            elif opt == "6":
                print("============ 执行退出系统,学生列表清零 =============")
                break
            else:
                print("===== 您输入的数字有误,请重新输入 =====")
                continue

    def show_menu(self):
        print("1.添加学生信息")
        print("2.删除学生信息")
        print("3.修改学生信息")
        print("4.查询单个学生信息")
        print("5.查询所有学生信息")
        print("6.退出系统")

    def insert_student(self):
        name = input('请输入要添加学生的姓名:')
        age = input('请输入要添加学生的年龄:')
        gender = input('请输入要添加学生的性别:')
        # 2. 生成一个学生字典
        #
        student_dict = {'name': name, 'age': age, 'gender': gender}
        # 3.将学生信息添加到列表中
        students_list.append(student_dict)
        print('=================添加学生信息成功==========================')

    def remove_student(self):
        # 1. 输入需要删除的学生姓名
        name = input('请输入需要删除的学生姓名:')
        for stu in students_list:
            # 学生信息存在的情况
            if stu['name'] == name:
                # 删除学生信息
                students_list.remove(stu)
                print('===================删除学生信息成功============')
                break
            else:
                print('=========学生信息不存在===============')

    def modify_student(self):
        # 1. 输入需要修改的学生姓名
        name = input('请输入需要修改的学生姓名:')
        for stu in students_list:
            # 学生信息存在的情况
            if stu['name'] == name:
                print('请输入需要修改的学生信息:1.姓名 2.年龄 3.性别')
                students_list.remove(stu)
                name = input('请输入要修改学生的姓名:')
                age = input('请输入要修改学生的年龄:')
                gender = input('请输入要修改学生的性别:')
                student_dict = {'name': name, 'age': age, 'gender': gender}
                students_list.append(student_dict)
                print('===================修改学生信息成功============')
                break
            else:
                print('=========学生信息不存在============')

    def show_single_info(self):
        name = input('请输入需要查询的学生姓名:')
        if len(students_list) > 0:
            for stu in students_list:
                if stu['name'] == name:
                    print(stu)
                print('============查询单个学生信息成功==================')
        else:
            print('======目前没有学生信息=====')

    def show_all_info(self):
        # 检查学生列表中是否为空
        if len(students_list) > 0:
            for stu in students_list:
                print(stu)
                print('============查询所有学生信息成功==================')
        else:
            print('======目前没有学生信息=====')


if __name__ == '__main__':
    # 实例化一个学生管理系统类的对象
    sm = StudentManager()
    sm.main()


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值