基于python实现学生信息管理系统


Posted in Python onNovember 22, 2019

学生信息管理系统负责编辑学生信息,适时地更新学生的资料。下面通过python实现一个简单的学生信息管理系统

stuInfo=[]
def main():
 while True:
 printMenu() #打印菜单
 key=int(input('请输入功能对应的数字:'))
 if key==1:
 addInfo() #添加学生信息
 elif key==2:
 delInfo() #删除学生信息
 elif key==3:
 modifystuInfo() #修改学生信息
 elif key==4:
 showstuInfo() #查看学生所有信息
 elif key==5: #退出系统
 quitConfirm=input('真的要退出吗?(Yes or No):')
 if quitConfirm=='Yes':
 break #结束循环
 else:
 print('输入有误,请重新输入')
 
#打印功能提示 
def printMenu():
 print('='*30)
 print('学生信息管理系统V1.0')
 print('1.添加学生信息')
 print('2.删除学生信息')
 print('3.修改学生信息')
 print('4.显示所有学生信息')
 print('5.退出系统')
 print('='*30)
 
#添加学生信息 
def addInfo():
 newname=input('输入新学生的名字:')
 newsex=input('输入新学生的性别:')
 newphone=input('输入新学生的号码:')
 newInfo={}
 newInfo['name']=newname
 newInfo['sex']=newsex
 newInfo['phone']=newphone
 stuInfo.append(newInfo)
 
#删除学生信息
def delInfo():
 delNum=int(input('请输入要删除的序号:'))-1
 del stuInfo[delNum]
 
#修改学生信息
def modifystuInfo():
 stuId=int(input('请输入要修改的学生序号:'))-1
 newname=input('输入修改后学生的名字:')
 newsex=input('输入修改后学生的性别:')
 newphone=input('输入修改后学生的号码:')
 stuInfo[stuId]['name']=newname
 stuInfo[stuId]['sex']=newsex
 stuInfo[stuId]['phone']=newphone
 
#显示所有学生信息
def showstuInfo():
 print('='*30)
 print('学生信息如下:')
 print('='*30)
 i=1
 for tempInfo in stuInfo:
 print('%d %s %s %s'%(i,tempInfo['name'],tempInfo['sex'],tempInfo['phone']))
 i+=1

调用main()函数即可:

基于python实现学生信息管理系统

虽然以上代码可以完成上述功能,但是每次调用程序里面的数据全部清除掉了,所以为了更好的模拟现实的学生信息管理系统,我们还需要将上次操作过后的数据保存下来,所以在上面的基础上加上数据存储的代码。

stuInfo=[]
def main():
 recoverData()
 while True:
 printMenu() #打印菜单
 key=int(input('请输入功能对应的数字:'))
 if key==1:
 addInfo() #添加学生信息
 elif key==2:
 delInfo() #删除学生信息
 elif key==3:
 modifystuInfo() #修改学生信息
 elif key==4:
 showstuInfo() #查看学生所有信息
 elif key==5:
 saveToFile()
 elif key==0: #退出系统
 quitConfirm=input('真的要退出吗?(Yes or No):')
 if quitConfirm=='Yes':
 break #结束循环
 else:
 print('输入有误,请重新输入')
 
#打印功能提示 
def printMenu():
 print('='*30)
 print('学生信息管理系统V1.0')
 print('1.添加学生信息')
 print('2.删除学生信息')
 print('3.修改学生信息')
 print('4.显示所有学生信息')
 print('5.保存数据')
 print('0.退出系统')
 print('='*30)
 
#添加学生信息 
def addInfo():
 newname=input('输入新学生的名字:')
 newsex=input('输入新学生的性别:')
 newphone=input('输入新学生的号码:')
 newInfo={}
 newInfo['name']=newname
 newInfo['sex']=newsex
 newInfo['phone']=newphone
 stuInfo.append(newInfo)
 
#删除学生信息
def delInfo():
 delNum=int(input('请输入要删除的序号:'))-1
 del stuInfo[delNum]
 
#修改学生信息
def modifystuInfo():
 stuId=int(input('请输入要修改的学生序号:'))-1
 newname=input('输入修改后学生的名字:')
 newsex=input('输入修改后学生的性别:')
 newphone=input('输入修改后学生的号码:')
 stuInfo[stuId]['name']=newname
 stuInfo[stuId]['sex']=newsex
 stuInfo[stuId]['phone']=newphone
 
#显示所有学生信息
def showstuInfo():
 print('='*30)
 print('学生信息如下:')
 print('='*30)
 i=1
 for tempInfo in stuInfo:
 print('%d %s %s %s'%(i,tempInfo['name'],tempInfo['sex'],tempInfo['phone']))
 i+=1
#保存学生信息
def saveToFile():
 f=open('backup.data','w')
 f.write(str(stuInfo))
 f.close()
 
#恢复数据
def recoverData():
 global stuInfo
 f=open('backup.data')
 content=f.read()
 stuInfo=eval(content)
 f.close()

基于python实现学生信息管理系统

从结果可以看出,选择操作4后可以显示上次保留下来的学生信息。

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

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

Python 相关文章推荐
python实现简单爬虫功能的示例
Oct 24 Python
Python实现pdf文档转txt的方法示例
Jan 19 Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
Jan 22 Python
对dataframe进行列相加,行相加的实例
Jun 08 Python
Python实现的特征提取操作示例
Dec 03 Python
python实现任意位置文件分割的实例
Dec 14 Python
pandas.cut具体使用总结
Jun 24 Python
python飞机大战pygame游戏框架搭建操作详解
Dec 17 Python
150行Python代码实现带界面的数独游戏
Apr 04 Python
python上传时包含boundary时的解决方法
Apr 08 Python
如何用Python编写一个电子考勤系统
Feb 08 Python
编写python程序的90条建议
Apr 14 Python
基于python cut和qcut的用法及区别详解
Nov 22 #Python
python创建学生成绩管理系统
Nov 22 #Python
Python计算不规则图形面积算法实现解析
Nov 22 #Python
python实现连续变量最优分箱详解--CART算法
Nov 22 #Python
pycharm运行scrapy过程图解
Nov 22 #Python
python迭代器常见用法实例分析
Nov 22 #Python
python自动分箱,计算woe,iv的实例代码
Nov 22 #Python
You might like
php gzip压缩输出的实现方法
2013/04/27 PHP
谈谈你对Zend SAPIs(Zend SAPI Internals)的理解
2015/11/10 PHP
PHP安全下载文件的方法
2016/04/07 PHP
jQuery ui 1.7更新小结
2009/08/15 Javascript
jQuery插件开发的两种方法及$.fn.extend的详解
2014/01/16 Javascript
jQuery 实现自动填充邮箱功能(带下拉提示)
2014/10/14 Javascript
js读写json文件实例代码
2014/10/21 Javascript
判断数组是否包含某个元素的js函数实现方法
2016/05/19 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
dts文件中删除一个node或属性的操作方法
2018/08/05 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
python去除空格和换行符的实现方法(推荐)
2017/01/04 Python
Tensorflow环境搭建的方法步骤
2018/02/07 Python
Python利用sqlacodegen自动生成ORM实体类示例
2019/06/04 Python
pytorch载入预训练模型后,实现训练指定层
2020/01/06 Python
Pytorch 实现sobel算子的卷积操作详解
2020/01/10 Python
Window系统下Python如何安装OpenCV库
2020/03/05 Python
html5 worker 实例(一) 为什么测试不到效果
2013/06/24 HTML / CSS
HTML5全屏(Fullscreen)API详细介绍
2015/04/24 HTML / CSS
精灵市场:Pixie Market
2019/06/18 全球购物
NOTINO英国:在线购买美容和香水
2020/02/25 全球购物
大学生求职推荐信
2013/11/27 职场文书
毕业生就业自荐书
2013/12/15 职场文书
秋季运动会加油稿200字
2014/01/11 职场文书
生物制药专业求职信
2014/03/11 职场文书
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
贷款委托书
2014/08/01 职场文书
上班离岗检讨书
2014/09/10 职场文书
党的群众路线教育实践活动组织生活会发言材料
2014/10/17 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers
MYSQL(电话号码,身份证)数据脱敏的实现
2021/05/28 MySQL
Go语言设计模式之结构型模式
2021/06/22 Golang
Python 数据科学 Matplotlib图库详解
2021/07/07 Python
基于Redis的List实现特价商品列表功能
2021/08/30 Redis
关于windows server 2012 DC 环境 重启后蓝屏代码:0xc00002e2的问题
2022/05/25 Servers
Django数据库(SQlite)基本入门使用教程
2022/07/07 Python