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中调用ggplot的三种方法
Apr 08 Python
python ansible服务及剧本编写
Dec 29 Python
Python判断两个list是否是父子集关系的实例
May 04 Python
Python中的groupby分组功能的实例代码
Jul 11 Python
pandas中apply和transform方法的性能比较及区别介绍
Oct 30 Python
Python流程控制 while循环实现解析
Sep 02 Python
Python手绘可视化工具cutecharts使用实例
Dec 05 Python
Python利用PyExecJS库执行JS函数的案例分析
Dec 18 Python
Python3运算符常见用法分析
Feb 14 Python
详解python UDP 编程
Aug 24 Python
python 下载文件的几种方法汇总
Jan 06 Python
Python 用户输入和while循环的操作
May 23 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模板Smarty的初级使用方法以及心得分享
2013/06/21 PHP
php通过字符串调用函数示例
2014/03/02 PHP
一组PHP加密解密函数分享
2014/06/05 PHP
PHP数组游标实现对数组的各种操作详解
2016/01/26 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
2016/03/03 PHP
YII Framework框架教程之国际化实现方法
2016/03/14 PHP
yii2项目实战之restful api授权验证详解
2017/05/20 PHP
PHP实现简单计算器小程序
2020/08/28 PHP
Javascript中valueOf与toString区别浅析
2013/03/19 Javascript
控制页面按钮在后台执行期间不重复提交的JS方法
2013/06/24 Javascript
基于jQuery实现仿百度首页选项卡切换效果
2016/05/29 Javascript
Node.js的Koa框架上手及MySQL操作指南
2016/06/13 Javascript
jQuery的ajax下载blob文件
2016/07/21 Javascript
获取今天,昨天,本周,上周,本月,上月时间(实例分享)
2017/01/04 Javascript
一道面试题引发的对javascript类型转换的思考
2017/03/06 Javascript
详解HTML5 使用video标签实现选择摄像头功能
2017/10/25 Javascript
Vue常用的几个指令附完整案例
2018/11/06 Javascript
微信小程序左滑删除功能开发案例详解
2018/11/12 Javascript
微信小程序实现判断是分享到群还是个人功能示例
2019/05/03 Javascript
javascript异步编程的六种方式总结
2019/05/17 Javascript
JavaScript TAB栏切换效果的示例
2020/11/05 Javascript
跟老齐学Python之不要红头文件(1)
2014/09/28 Python
详解Django的model查询操作与查询性能优化
2018/10/16 Python
python实现五子棋游戏
2019/06/18 Python
CSS3 特效范例整理
2011/08/22 HTML / CSS
HTML5中canvas中的beginPath()和closePath()的重要性
2018/08/24 HTML / CSS
HTML5 input placeholder 颜色修改示例
2014/05/30 HTML / CSS
英国最大的宝石首饰超市:QP Jewellers
2018/09/23 全球购物
先进党支部事迹材料
2014/01/13 职场文书
周年庆典主持词
2014/04/02 职场文书
企业管理标语
2014/06/10 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
卫生院义诊活动总结
2015/05/07 职场文书
毕业赠语大全
2015/06/23 职场文书
2016年清明节红领巾广播稿
2015/12/17 职场文书
MySQL如何快速创建800w条测试数据表
2022/03/17 MySQL