基于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中给Nan值更改为0的方法
Oct 30 Python
python 遍历列表提取下标和值的实例
Dec 25 Python
对python实现二维函数高次拟合的示例详解
Dec 29 Python
图文详解Django使用Pycharm连接MySQL数据库
Aug 09 Python
python3操作注册表的方法(Url protocol)
Feb 05 Python
Tensorflow中tf.ConfigProto()的用法详解
Feb 06 Python
解决springboot yml配置 logging.level 报错问题
Feb 21 Python
python线性插值解析
Jul 05 Python
Pycharm安装第三方库失败解决方案
Nov 17 Python
Selenium 配置启动项参数的方法
Dec 04 Python
详解python 条件语句和while循环的实例代码
Dec 28 Python
教你怎么用PyCharm为同一服务器配置多个python解释器
May 31 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
笑谈配置,使用Smarty技术
2007/01/04 PHP
模板引擎smarty工作原理以及使用示例
2014/05/25 PHP
php 过滤英文标点符号及过滤中文标点符号代码
2014/06/12 PHP
Win7 64位系统下PHP连接Oracle数据库
2014/08/20 PHP
php获取汉字拼音首字母的方法
2015/10/21 PHP
PHP socket 模拟POST 请求实例代码
2016/07/18 PHP
php检测mysql表是否存在的方法小结
2017/07/20 PHP
javascript Firefox与IE 替换节点的方法
2010/02/24 Javascript
通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
2011/05/07 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
JS获得URL超链接的参数值实例代码
2013/06/21 Javascript
jQuery实现简单的文件上传进度条效果
2020/03/26 Javascript
javascript动态获取登录时间和在线时长
2016/02/25 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
2016/07/04 Javascript
基于JS实现发送短信验证码后的倒计时功能(无视页面刷新,页面关闭不进行倒计时功能)
2016/09/02 Javascript
解决vue单页面修改样式无法覆盖问题
2019/08/05 Javascript
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python文件处理
2016/02/29 Python
python 上下文管理器使用方法小结
2017/10/10 Python
浅述python中深浅拷贝原理
2018/09/18 Python
Python3爬楼梯算法示例
2019/03/04 Python
python读取并定位excel数据坐标系详解
2019/06/26 Python
python破解bilibili滑动验证码登录功能
2019/09/11 Python
Python实现SMTP邮件发送
2020/06/16 Python
HTML5 drag和drop具体使用详解
2021/01/18 HTML / CSS
美国在线宠物用品商店:Entirely Pets
2017/01/01 全球购物
爱尔兰最大的体育零售商:Life Style Sports
2019/06/12 全球购物
银行自荐信范文
2013/10/07 职场文书
工程监理应届生求职信
2013/11/09 职场文书
4s客服专员岗位职责
2013/12/01 职场文书
出纳工作岗位责任制
2014/02/02 职场文书
《再见了,亲人》教学反思
2014/02/26 职场文书
项目施工员岗位职责
2014/03/09 职场文书
Python实现socket库网络通信套接字
2021/06/04 Python
Python中的turtle画箭头,矩形,五角星
2022/03/16 Python
golang的文件创建及读写操作
2022/04/14 Golang