您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Python实现学生管理系统(面向对象版)

51自学网 2021-10-30 22:26:47
  python
这篇教程Python实现学生管理系统(面向对象版)写得很实用,希望能帮到您。

本文实例为大家分享了Python实现学生管理系统的具体代码,供大家参考,具体内容如下

实现从面向过程到面向对象的过度,通过更改前面的学生管理系统实现面向对象,也证明了面向过程可以完美过度到面向对象,从而为以后的程序进步做了进一步优化,方便以后的程序更改。

完整代码如下:

student_main模块中的代码

import student_toolsclass Student(student_tools.StudentT):    def __init__(self):        self.user=['wangtaotao']        self.pwd=['123456']        student_tools.StudentT.__init__(self)    #登录    def denglu(self):        users = input("请输入您的用户名:")        pwds = input("请输入您的密码:")        if users in self.user and pwds in self.pwd:            self.student()        else:            print("账号或密码不正确,请重新输入")    #注册    def zhuce(self):        users=input("请输入您要注册的用户名:")        pwds=input("请输入您要注册的密码:")        self.user.append(users)        self.pwd.append(pwds)        print()        print("注册成功!")        print()    #登录界面    def dljiemian(self):        while True:            print("---------------------------")            print("    学生管理系统登陆界面 V1.0  ")            print("                           ")            print("        1:登   录           ")            print("        2:注   册           ")            print("        3:退   出           ")            print("                           ")            print("---------------------------")            xx=input("请输入您的选择:")            #1.登录            if xx=='1':                self.denglu()            elif xx=='2':            #2.注册                self.zhuce()            elif xx=='3':            #3.退出                print()                print("成功退出!")                print()                break            else:                print("输入错误,请重新输入")    #学生管理系统    def student(self):        # 调用student_tools模块中的读取文件函数        super().read_file()        while True:            #调用student_tools模块中的界面函数            super().jiemian()            x=input("请输入您的选择:")            #添加学生            if x=='1':                super().add()            #删除学生            elif x=='2':                super().dele()            #修改学生            elif x=='3':                super().xiugai()            #查询学生            elif x=='4':                super().find()            #显示所有学生            elif x=='5':                super().showall()            #保存数据至文件中            elif x=='6':                super().save_file()            #退出学生管理系统,返回上一层登录界面系统            elif x=='7':                print()                print("成功退出学生管理系统!")                break            else:                print()                print("输入错误,请重新输入")                print()    #调用最先执行的登录界面函数if __name__=='__main__':    wtt=Student()    wtt.dljiemian()

student_tools模块中的代码

import osclass StudentT(object):    def __init__(self):        self.student_list=[]        self.student_dict={}    #学生管理系统界面    @staticmethod    def jiemian():        print("---------------------------")        print("      学生管理系统 V1.0")        print("                           ")        print("      1:添加学生"            )        print("      2:删除学生"            )        print("      3:修改学生"            )        print("      4:查询学生"            )        print("      5:显示所有学生"         )        print("      6:保存数据"            )        print("      7:退出系统"            )        print("                           ")        print("---------------------------")    #添加学生    def add(self):        name=input("请输入录入学生姓名:")        cls=input("请输入学生班级:")        age=input("请输入录入学生年龄:")        phone=input("请输入录入学生手机号:")        addr=input("请输入录入学生家庭住址:")        self.student_dict={"name":name,"class":cls,"age":age,"phone":phone,"address":addr}        self.student_list.append(self.student_dict)        print()        print("-----添加学生信息界面-----")        print()        print("姓名/t/t","班级/t/t","年龄/t/t","电话号/t/t","家庭住址/t/t")        for student_dict_1 in self.student_list:            print("%s/t/t%s/t/t%s/t/t%s/t/t%s" %(student_dict_1["name"],                                                 student_dict_1["class"],                                                 student_dict_1["age"],                                                 student_dict_1["phone"],                                                 student_dict_1["address"]))        print()        print("录入成功!")        print()    #删除学生    def dele(self):        name_del=input("请输入想要删除的学生姓名:")        for student_dict_1 in self.student_list:            if name_del in student_dict_1["name"]:                self.student_list.remove(student_dict_1)                print()                print("删除%s信息成功!" % name_del)                print()                break        else:            print()            print("您输入的学生姓名错误,请重新输入")            print()    #修改学生    def xiugai(self):        name_xiugai=input("请输入想要修改的学生姓名:")        for student_dict_1 in self.student_list:            if name_xiugai == student_dict_1["name"]:                print()                print("-----修改界面-----")                print()                print("姓名/t/t", "班级/t/t", "年龄/t/t", "电话号/t/t", "家庭住址/t/t")                print("%s/t/t%s/t/t%s/t/t%s/t/t%s" %(student_dict_1["name"],                                                     student_dict_1["class"],                                                     student_dict_1["age"],                                                     student_dict_1["phone"],                                                     student_dict_1["address"]))                #回车不修改                student_dict_1["name"]=self.new_input(student_dict_1["name"],"请输入修改后的学生姓名[回车不修改]:")                student_dict_1["class"]=self.new_input(student_dict_1["class"],"请输入修改后的学生班级[回车不修改]:")                student_dict_1["age"]=self.new_input(student_dict_1["age"],"请输入修改后的学生年龄[回车不修改]:")                student_dict_1["phone"]=self.new_input(student_dict_1["phone"],"请输入修改后的学生手机号[回车不修改]:")                student_dict_1["address"]=self.new_input(student_dict_1["address"],"请输入修改后的学生家庭地址[回车不修改]:")                print()                print("修改成功!")                print()                break        else:            print()            print("您输入的学生姓名错误,请重新输入")            print()    #查找学生    def find(self):        find_name=input("请输入需要查找的学生姓名:")        for student_dict_1 in self.student_list:            if find_name == student_dict_1["name"]:                print()                print("-----查询结果界面-----")                print()                print("姓名/t/t", "班级/t/t", "年龄/t/t", "电话号/t/t", "家庭住址/t/t")                print("%s/t/t%s/t/t%s/t/t%s/t/t%s" % (student_dict_1["name"],                                                      student_dict_1["class"],                                                      student_dict_1["age"],                                                      student_dict_1["phone"],                                                      student_dict_1["address"]))            else:                print()                print("-----查询结果界面-----")                print()                print("无此学生信息")    #显示所有学生信息    def showall(self):        if len(self.student_list)>0:            print()            print("-----显示所有学生信息-----")            print()            print("姓名/t/t", "班级/t/t", "年龄/t/t", "电话号/t/t", "家庭住址/t/t")            for student_dict_1 in self.student_list:                print("%s/t/t%s/t/t%s/t/t%s/t/t%s" % (student_dict_1["name"],                                                      student_dict_1["class"],                                                      student_dict_1["age"],                                                      student_dict_1["phone"],                                                      student_dict_1["address"]))        else:            print()            print("暂无数据!")            print()    #设置用户不输入内容返回原值,输入内容返回新内容    def new_input(self,yuanzhi,message):        self.input_str=input(message)        if len(self.input_str)>0:            return self.input_str        else:            return yuanzhi    #保存数据至文件中    def save_file(self):        f = open("student2.txt", 'w', encoding='utf-8')        f.write(str(self.student_list))        f.close()        print("数据保存至student1.txt文件成功!")    #将数据读取至变量中    def read_file(self):         if os.path.exists('student2.txt'):            f = open('student2.txt', 'r', encoding='utf-8')            ret = f.read()            self.student_list=eval(ret)            f.close()            print("数据读取成功!")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持51zixue.net。


Pycharm连接远程服务器并远程调试的全过程
python面向对象版学生信息管理系统
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。