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操作csv文件实例详解
Jul 31 Python
Python tkinter模块中类继承的三种方式分析
Aug 08 Python
python实现定时自动备份文件到其他主机的实例代码
Feb 23 Python
java中两个byte数组实现合并的示例
May 09 Python
python3 对list中每个元素进行处理的方法
Jun 29 Python
python将字符串以utf-8格式保存在txt文件中的方法
Oct 30 Python
Python实现的栈、队列、文件目录遍历操作示例
May 06 Python
获取django框架orm query执行的sql语句实现方法分析
Jun 20 Python
这可能是最好玩的python GUI入门实例(推荐)
Jul 19 Python
python 进程 进程池 进程间通信实现解析
Aug 23 Python
Python3批量移动指定文件到指定文件夹方法示例
Sep 02 Python
解决jupyter notebook 前面书写后面内容消失的问题
Apr 13 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
开启CURL扩展,让服务器支持PHP curl函数(远程采集)
2011/03/19 PHP
PHP实现根据设备类型自动跳转相应页面的方法
2014/07/24 PHP
PHP多文件上传类实例
2015/03/07 PHP
PHP处理会话函数大总结
2015/08/05 PHP
javascript 自动转到命名锚记
2009/01/10 Javascript
jquery+json实现的搜索加分页效果
2010/03/31 Javascript
理解Javascript_07_理解instanceof实现原理
2010/10/15 Javascript
javascript中使用replaceAll()函数实现字符替换的方法
2010/12/25 Javascript
深入document.write()与HTML4.01的非成对标签的详解
2013/05/08 Javascript
js实现同一页面可多次调用的图片幻灯切换效果
2015/02/28 Javascript
Bootstrap基本样式学习笔记之表单(3)
2016/12/07 Javascript
JavaScript 函数节流详解及方法总结
2017/02/09 Javascript
利用Ionic2 + angular4实现一个地区选择组件
2017/07/27 Javascript
使用node.js实现微信小程序实时聊天功能
2018/08/13 Javascript
vue 使用html2canvas将DOM转化为图片的方法
2018/09/11 Javascript
javascript导出csv文件(excel)的方法示例
2019/08/25 Javascript
详解微信小程序开发之formId使用(模板消息)
2019/08/27 Javascript
Angular8路由守卫原理和使用方法
2019/08/29 Javascript
Vue分页插件的前后端配置与使用
2019/10/09 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
python提取字典key列表的方法
2015/07/11 Python
Python3.4实现从HTTP代理网站批量获取代理并筛选的方法示例
2017/09/26 Python
Python中pygal绘制雷达图代码分享
2017/12/07 Python
python实现本地图片转存并重命名的示例代码
2018/10/27 Python
Python检查和同步本地时间(北京时间)的实现方法
2018/12/03 Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
2020/06/23 Python
如何通过命令行进入python
2020/07/06 Python
Emma Bridgewater官网:英国餐具制造商
2019/11/24 全球购物
马歇尔耳机官网:Marshall Headphones
2020/02/04 全球购物
统计每一学生的平均成绩
2014/06/06 面试题
中科软测试工程师面试题
2012/06/16 面试题
执行总经理岗位职责
2014/02/03 职场文书
三人合伙协议书范本
2014/10/29 职场文书
北京导游词
2015/02/12 职场文书
2015年小学美术工作总结
2015/05/25 职场文书
sql中mod()函数取余数的用法
2021/05/29 SQL Server