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



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



目录
相关文章
|
1月前
|
机器学习/深度学习 数据采集 供应链
Python实现深度学习模型:智能库存管理系统
【10月更文挑战第5天】 Python实现深度学习模型:智能库存管理系统
153 9
|
1月前
|
机器学习/深度学习 传感器 存储
使用 Python 实现智能地震预警系统
使用 Python 实现智能地震预警系统
115 61
|
15天前
|
弹性计算 数据管理 数据库
从零开始构建员工管理系统:Python与SQLite3的完美结合
本文介绍如何使用Python和Tkinter构建一个图形界面的员工管理系统(EMS)。系统包括数据库设计、核心功能实现和图形用户界面创建。主要功能有查询、添加、删除员工信息及统计员工数量。通过本文,你将学会如何结合SQLite数据库进行数据管理,并使用Tkinter创建友好的用户界面。
从零开始构建员工管理系统:Python与SQLite3的完美结合
|
7天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
30 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
7天前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
40 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
|
19天前
|
机器学习/深度学习 数据采集 存储
使用Python实现智能农业灌溉系统的深度学习模型
使用Python实现智能农业灌溉系统的深度学习模型
79 6
|
23天前
|
机器学习/深度学习 数据采集 算法框架/工具
使用Python实现智能生态系统监测与保护的深度学习模型
使用Python实现智能生态系统监测与保护的深度学习模型
69 4
|
1月前
|
机器学习/深度学习 API 计算机视觉
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
25 2
|
1月前
|
机器学习/深度学习 存储 算法
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
30 1
|
1月前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
84 1