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 图片验证码代码分享
Jul 04 Python
python的mysqldb安装步骤详解
Aug 14 Python
Django中cookie的基本使用方法示例
Feb 03 Python
Python操作json的方法实例分析
Dec 06 Python
对python多线程中互斥锁Threading.Lock的简单应用详解
Jan 11 Python
Python: 传递列表副本方式
Dec 19 Python
Python基于pygame实现单机版五子棋对战
Dec 26 Python
Xadmin+rules实现多选行权限方式(级联效果)
Apr 07 Python
Python sorted对list和dict排序
Jun 09 Python
python 基于selectors库实现文件上传与下载
Dec 31 Python
用Python提取PDF表格的方法
Apr 11 Python
Python爬虫框架之Scrapy中Spider的用法
Jun 28 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生成文件
2007/01/15 PHP
thinkphp中连接oracle时封装方法无法用的解决办法
2013/06/17 PHP
YII Framework框架教程之日志用法详解
2016/03/14 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
PHP实现分布式memcache设置web集群session同步的方法
2018/04/10 PHP
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
js 验证密码强弱的小例子
2013/03/21 Javascript
JavaScript获取FCK编辑器信息的具体方法
2013/07/12 Javascript
javascript 拷贝节点cloneNode()使用介绍
2014/04/03 Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
2014/05/02 Javascript
vue构建单页面应用实战
2017/04/10 Javascript
Vue父组件调用子组件事件方法
2018/02/23 Javascript
jquery的 filter()方法使用教程
2018/03/22 jQuery
React Router V4使用指南(精讲)
2018/09/17 Javascript
解决Vue-cli npm run build生产环境打包,本地不能打开的问题
2018/09/20 Javascript
详解vue 不同环境配置不同的打包命令
2019/04/07 Javascript
详解express使用vue-router的history踩坑
2019/06/05 Javascript
node使用async_hooks模块进行请求追踪
2021/01/28 Javascript
Django Admin实现上传图片校验功能
2016/03/06 Python
python统计字母、空格、数字等字符个数的实例
2018/06/29 Python
python适合人工智能的理由和优势
2019/06/28 Python
Python实现分数序列求和
2020/02/25 Python
Python基础之字符串常见操作经典实例详解
2020/02/26 Python
Python virtualenv虚拟环境实现过程解析
2020/04/18 Python
css3教程之倾斜页面
2014/01/27 HTML / CSS
阿联酋优惠券服务:Living Kool
2019/12/12 全球购物
向全球直邮输送天然健康产品:iHerb.com
2020/05/03 全球购物
.net笔试题
2014/03/03 面试题
应届医学毕业生求职信分享
2013/12/02 职场文书
终止合同协议书
2014/04/17 职场文书
骨干教师事迹材料
2014/12/17 职场文书
教导主任个人总结
2015/03/03 职场文书
道士塔读书笔记
2015/06/30 职场文书
MySQL中的布尔值,怎么存储false或true
2021/06/04 MySQL
mysql中varchar类型的日期进行比较、排序等操作的实现
2021/11/17 MySQL
上个世纪50年代的可穿戴技术:无线电帽子
2022/02/18 无线电