python学生管理系统(二)

简介: python学生管理系统(二)

1:首先创建一个main函数。


from managerSystem import *
if __name__=='__main__':
    student_manager=StudentManager()
    student_manager.run()

2:然后在写入一个student.py类去传参。


class Student(object):
    def __init__(self,name,gender,tel):
        self.name=name
        self.gender=gender
        self.tel=tel
    def __str__(self):
        return f'{self.name},{self.gender},{self.tel}'

3:也是很关键的一步——写函数的功能并去实现该功能!!!


创建一个 managerSystem.py


from student import *
class StudentManager(object):
    def __init__(self):
        #存储学员数据
        self.student_list=[]
     #入口函数习惯定义run函数
    def run(self):
        #加载文件里面学员数据
        #菜单
        self.load_student()
        while True:
            self.show_menu()
            menu_num=int(input('请输入序号'))
            if menu_num ==1:
                #添加学员
              self.add_student()
            elif menu_num ==2:
                #删除学员
             self.del_student()
            elif menu_num==3:
                #修改学员信息
                self.modify_stundnt()
            elif menu_num==4:
                #查询学员信息
                self.serarch_stundet()
            elif menu_num==5:
                #显示所有学员信
                self.show_student()
            elif menu_num==6:
                #保存学员信息
                self.save_student()
            elif menu_num==7:
                #退出系统,退出循环
                break
    @staticmethod
    def show_menu():
        print('请选择如下功能:')
        print('1添加成员')
        print('2删除成员')
        print('3修改')
        print('4查询')
        print('5显示所有成员')
        print('6保存学员信息')
        print('7退出系统')
    def add_student(self):
       #用户输入
       name=input('输入姓名:')
       gender=input('请输入您的性别:')
       tel=input('输入手机号:')
       #导入student模块
       student=Student(name,gender,tel)
       self.student_list.append(student)
       print(self.student_list)
       print(student)
    def del_student(self):
       del_name=input('请输入删除学员名字:')
       for i in self.student_list:
           if i.name==del_name:
               self.student_list.remove(i)
               break
       else:
           print('查无此人')
    def modify_stundnt(self):
         modify_student=input('请输入姓名:')
         for i in self.student_list:
            if i.name==modify_student:
                i.name=input('输入姓名:')
                i.gender=input('请输入性别:')
                i.tel=input('请输入手机号:')
                print(f'修改成功,学员姓名{i.name},学员性别{i.gender},学员电话{i.tel}')
                break
         else:
            print('查无此人')
    def serarch_stundet(self):
       serarch_stundet=input('请输入姓名:')
       for i in self.student_list:
           if i.name==serarch_stundet:
               print(f'{i.name},{i.gender},{i.tel}')
               break
       else:
           print('查无此人')
    def show_student(self):
        print('姓名\t 性别\t 电话')
        for i in self.student_list:
            print(f'{i.name}\t{i.gender}\t{i.tel}')
    def save_student(self):
        f=open('student.data','w')
        new_list=[i.__dict__ for i in self.student_list]
        print(new_list)
        f.write(str(new_list))
        f.close()
    def load_student(self):
        try:
            f=open('student.data','r')
        except:
            f=open('student.data','w')
        else:
            data=f.read()
            new_list=eval(data)
            self.student_list=[Student(i['name'],i['gender'],i['tel']) for i in new_list]
        finally:
            f.close()

我们最后看看这个的运行的效果吧!!

image.png


image.png



我们也能在txt文本查看这个保存的数据。

image.png



这就是这个学生管理系统的全部步骤!



目录
相关文章
|
3月前
|
机器学习/深度学习 监控 算法
基于mediapipe深度学习的手势数字识别系统python源码
本内容涵盖手势识别算法的相关资料,包括:1. 算法运行效果预览(无水印完整程序);2. 软件版本与配置环境说明,提供Python运行环境安装步骤;3. 部分核心代码,完整版含中文注释及操作视频;4. 算法理论概述,详解Mediapipe框架在手势识别中的应用。Mediapipe采用模块化设计,包含Calculator Graph、Packet和Subgraph等核心组件,支持实时处理任务,广泛应用于虚拟现实、智能监控等领域。
|
1月前
|
安全 JavaScript Java
Python中None与NoneType的真相:从单例对象到类型系统的深度解析
本文通过10个真实场景,深入解析Python中表示“空值”的None与NoneType。从单例模式、函数返回值,到类型注解、性能优化,全面揭示None在语言设计与实际编程中的核心作用,帮助开发者正确高效地处理“无值”状态,写出更健壮、清晰的Python代码。
134 3
|
6月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的商城管理系统源码+运行步骤
基于Python+Vue开发的商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的网上商城管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
196 7
|
2月前
|
算法 数据可视化 数据挖掘
基于EM期望最大化算法的GMM参数估计与三维数据分类系统python源码
本内容展示了基于EM算法的高斯混合模型(GMM)聚类实现,包含完整Python代码、运行效果图及理论解析。程序使用三维数据进行演示,涵盖误差计算、模型参数更新、结果可视化等关键步骤,并附有详细注释与操作视频,适合学习EM算法与GMM模型的原理及应用。
|
前端开发 关系型数据库 MySQL
基于python“花开富贵”花园管理系统
感谢大学同学的陪伴与帮助,在我独立编写毕业论文期间,大学同学的鼓励与耐心的帮助使得我少走很多弯路,节省毕业论文的编写时间,也让我有更多精力去完善我开发的系统。 在整个系统开发过程中,我周围的同学和朋友给了我很多意见,所以我很快就确认了系统的商业思想。在次,我由衷的向他们表示感激。
38 0
|
5月前
|
前端开发 JavaScript 关系型数据库
基于python的租房网站-房屋出租租赁系统(python+django+vue)源码+运行
该项目是基于python/django/vue开发的房屋租赁系统/租房平台,作为本学期的课程作业作品。欢迎大家提出宝贵建议。
161 6
|
5月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的美容预约管理系统源码+运行
基于Python+Vue开发的美容预约管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的美容诊所预约管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
89 9
|
5月前
|
JavaScript 前端开发 关系型数据库
基于Python+Vue开发的体育场馆预约管理系统源码+运行
本项目为大学生课程设计作业,采用Python和Vue技术构建了一个体育场馆预约管理系统(实现前后端分离)。系统的主要目标在于帮助学生理解和掌握Python编程知识,同时培养其项目规划和开发能力。参与该项目的学习过程,学生能够在实际操作中锻炼技能,为未来的职业发展奠定良好的基础。
128 3
|
5月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的摄影网上预约管理系统源码+运行
基于Python+Vue开发的摄影网上预约管理系统(前后端分离),影楼婚纱摄影,这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的在线摄影预约管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
93 8

热门文章

最新文章

推荐镜像

更多