python实现简单学生信息管理系统


Posted in Python onApril 09, 2020

python简单的学生信息管理系统-文件版,供大家参考,具体内容如下

功能如下

主函数部分
增加学生信息
修改学生信息
删除学生信息
查询学生
显示所有学生的信息
将数据录入文件
读取文件数据

学习文件模块后,将之前做的学生信息管理系统添加文件模块。

功能如下

1、新增学生信息;
2、修改学生信息;
3、删除学生信息;
4、查询学生信息;
5、显示学生信息;
6、将数据录入文件;
7、读取文件数据;
8、退出系统。

python实现简单学生信息管理系统

主函数部分

这里定义一个列表L,用来存储学生信息。

python实现简单学生信息管理系统

增加学生信息

将学生信息保存为字典添加到列表里。

def add():
 dict1 = {}
 sName = input("请输入学生姓名:")
 sAge = eval(input("请输入学生年龄:"))
 sNumber = eval(input("请输入学生学号:"))
 tele_num = eval(input("请输入手机号码:"))
 dict1["name"] = sName
 dict1["age"] = sAge
 dict1["sNumber"] = sNumber
 dict1["tele_num"] = tele_num
 L.append(dict1)
 print("增加成功")
 input("按任意键返回菜单")

python实现简单学生信息管理系统

修改学生信息

这里以学号为索引值,如果学号不在学生库里则提示无此学生。

def modify():
 num = eval(input("请输入学生学号:"))
 index1 = -1
 for i,dict in enumerate(L):
 if dict.get("sNumber") == num:
 index1 = i
 break
 if index1 != -1:
 L[index1]['name'] = input("请输入新的姓名:")
 L[index1]['age'] = eval(input("请输入新的年龄:"))
 L[index1]['sNumber'] = eval(input("请输入新的学号:"))
 L[index1]['tele_num'] = eval(input("请输入新的手机号:"))
 print("修改成功")
 else:
 print("无此学生")
 input("按任意键返回菜单")

删除学生信息

删除学生也是以学号为索引值,如果学号不在学生库里则提示无此学生。

def delete():
 num = eval(input("请输入要删除学生的学号:"))
 index1 = -1
 for i, dict in enumerate(L):
 if dict.get("sNumber") == num:
 index1 = i
 break
 if index1 != -1:
 del L[index1]
 print("删除成功")
 else:
 print("无此学生")
 input("按任意键返回菜单")

查询学生

查询成功此显示学生信息,否则提示无此学生。

def search():
 num = eval(input("请输入要查询学生的学号:"))
 index1 = -1
 for i, dict in enumerate(L):
 if dict.get("sNumber") == num:
 index1 = i
 break
 if index1 != -1:
 print("姓名:%s 年龄:%d 学号:%d 手机号码:%d" % (L[index1]["name"], L[index1]["age"], \
 L[index1]["sNumber"], L[index1]["tele_num"]))
 else:
 print("无此学生")
 input("按任意键返回菜单")

显示所有学生的信息

def prin():
 if len(L) == 0:
 print("无成员")
 else:
 for dict1 in L:
 print("姓名:%s 年龄:%d 学号:%d 手机号码:%d"%(dict1["name"], dict1["age"],\
 dict1["sNumber"], dict1["tele_num"]))
 input("按任意键返回菜单")

将数据录入文件

因为每个学生的信息是字典类型,所以录入之前先转化为字符串。

def write_file():
 file = open("student_list.data", 'w', encoding='utf-8')
 for i in L:
 file.write(str(i) + '\n')
 file.close()
 input("录入成功,按任意键返回菜单!")

读取文件数据

读取到的信息是字符串,可以使用eval()函数将信息变为原来的字典类型,再添加到列表里。

def read_file():
 try:
 file = open("student_list.data", 'r', encoding='utf-8')
 content = file.readlines()
 for i in content:
 L.append(eval(i))
 file.close()
 input("读取完成,按任意键返回菜单!")
 except:
 print("文件不存在")

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python内置数据类型详解
Aug 18 Python
实例讲解Python中的私有属性
Aug 21 Python
Python IDLE 错误:IDLE''s subprocess didn''t make connection 的解决方案
Feb 13 Python
Python实现自动发送邮件功能
Mar 02 Python
Python Grid使用和布局详解
Jun 30 Python
python 实现数字字符串左侧补零的方法
Dec 04 Python
详解Python的数据库操作(pymysql)
Apr 04 Python
python实现抽奖小程序
Apr 15 Python
对Django中static(静态)文件详解以及{% static %}标签的使用方法
Jul 28 Python
在服务器上安装python3.8.2环境的教程详解
Apr 26 Python
Python+PyQt5实现灭霸响指功能
May 25 Python
Python数据结构之队列详解
Mar 21 Python
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
Apr 08 #Python
pycharm的python_stubs问题
Apr 08 #Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
Apr 08 #Python
解决pycharm下pyuic工具使用的问题
Apr 08 #Python
解决pyqt5异常退出无提示信息的问题
Apr 08 #Python
python由已知数组快速生成新数组的方法
Apr 08 #Python
TensorFlow2.X使用图片制作简单的数据集训练模型
Apr 08 #Python
You might like
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
2010/08/01 PHP
thinkphp5框架扩展redis类方法示例
2019/05/06 PHP
JavaScript中获取元素索引的函数
2010/09/10 Javascript
js 判断脚本加载完毕的代码
2011/07/13 Javascript
了解jQuery技巧来提高你的代码(个人觉得那个jquery的手册很不错)
2012/02/10 Javascript
关于scrollLeft,scrollTop的浏览器兼容性测试
2013/03/19 Javascript
Javascript 遮罩层和加载效果代码
2013/08/01 Javascript
js中substring和substr的详细介绍与用法
2013/08/29 Javascript
浅谈javascript六种数据类型以及特殊注意点
2013/12/20 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
jquery实现手机号码选号的方法
2015/07/31 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
2016/11/25 Javascript
localStorage实现便签小程序
2016/11/28 Javascript
js实现复选框的全选和取消全选效果
2017/01/03 Javascript
微信小程序 下拉列表的实现实例代码
2017/03/08 Javascript
JavaScript格式化json和xml的方法示例
2019/01/22 Javascript
Angular7.2.7路由使用初体验
2019/03/01 Javascript
Vue 引入AMap高德地图的实现代码
2019/04/29 Javascript
javascript实现图片轮播代码
2019/07/09 Javascript
让python在hadoop上跑起来
2016/01/27 Python
学习Python selenium自动化网页抓取器
2018/01/20 Python
Python爬虫使用脚本登录Github并查看信息
2018/07/16 Python
查看python安装路径及pip安装的包列表及路径
2019/04/03 Python
Python猴子补丁知识点总结
2020/01/05 Python
keras使用Sequence类调用大规模数据集进行训练的实现
2020/06/22 Python
Django 实现图片上传和下载功能
2020/12/31 Python
神经网络训练采用gpu设置的方式
2021/03/03 Python
Shell如何接收变量输入
2016/08/06 面试题
测量实习生自我鉴定
2013/09/19 职场文书
大三在校生电子商务求职信
2013/10/29 职场文书
好的演讲稿开场白
2013/12/30 职场文书
爱国主义教育活动总结
2014/05/07 职场文书
我的梦想演讲稿500字
2014/08/21 职场文书
三提三创主题教育活动查摆整改措施
2014/10/25 职场文书
庆七一主持词
2015/06/29 职场文书
Python面向对象之成员相关知识总结
2021/06/24 Python