一个简单的基于python和tkinter的学生信息管理系统一、需求分析1、学生信息管理系统使用tkinter制作窗口界面。让界面更加美观。2.实现了与数据库的连接,可以保存或读取师生信息,并可以通过数据库访问基本信息。3.实现了学生资料的增删改查功能。4.系统还为教师和学生分配了一定的权限。教师登录后拥有管理员权限,学生登录后只能查看自己的相关信息。二、功能设计与分析1、程序一开始,首先进入一个登录界面,如图:启动界面,通过self.window=tk.Tk()创建窗体,使用label标签添加文字,使用Button按钮组件创建按钮。2、点击教师登录,进入教师(管理员界面),点击学生登录,进入学生信息查看界面,点击about,有我的一些信息,点击exit,退出系统.点击教师登录,如图:登录时。这里连接的是数据库,通过db=pymysql.connect("localhost","root","root","student"打开数据库连接(python)"),通过游标操作数据库,实现增删改查。3.输入账号密码后进入4.在这个界面中,实现了学生信息的增删改查。点击信息表表头(学号、年龄)排序,在学号栏输入学号,点击搜索即可找到对应的学生信息。5、点击学生登录,进入学生查看学生信息的界面,如图:流程图:3、总结和经验总结:在设计之初,我想到了界面的展示学生信息管理系统。感觉正常使用,分权限,比如老师可以做什么,学生可以做什么。想象起来比较简单,但是实现起来比较麻烦。比如初始界面,老师登录后,之前那个界面如何隐藏,界面完成后如何返回到之前的界面,修改一个学生的信息,我们如何获取已有的信息然后修改,就是页面的布局,然后是排序。一开始我想到的是用一个单独的按钮进行排序,然后把排序好的放在一个新的界面中,但是感觉这样不是很美观。正好那天我在上网。看到列表排序的方法,就用了。一开始,我想到了使用冒泡、选择排序等方法进行排序,但是操作起来比较麻烦。由于数据量大,需要使用数组或者链表来操作。感觉比较麻烦,后来网上找的方法帮我解决了。代码如下:体会:通过本课程设计的编写,总体上对python语言有了更深的了解,感受到了python语言的简单明了,掌握了python与数据库的联系,理解了类python类之间的关系以及增删改查的逻辑处理,我从这个课程设计中学到了很多。当然,我还要感谢老师在疫情期间对我们的教导。最后谢谢老师!!关注公众号;Ness随笔,菜鸟小谢带你学习java和算法,顺便学一点python。如需源码,请联系我,QQ:1787798327。
