博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python实现学生信息管理系统
阅读量:4100 次
发布时间:2019-05-25

本文共 3525 字,大约阅读时间需要 11 分钟。

学生信息管理系统负责编辑学生信息,适时地更新学生的资料。下面通过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()函数即可:

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

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()

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

你可能感兴趣的文章
艾默生纪念谷轮™在空调和制冷领域的百年创新成就
查看>>
NEXO代币持有者获得20,428,359.89美元股息
查看>>
Piper Sandler为EverArc收购Perimeter Solutions提供咨询服务
查看>>
RMRK筹集600万美元,用于在Polkadot上建立先进的NFT系统标准
查看>>
JavaSE_day12 集合
查看>>
JavaSE_day14 集合中的Map集合_键值映射关系
查看>>
Day_15JavaSE 异常
查看>>
异常 Java学习Day_15
查看>>
JavaSE_day_03 方法
查看>>
day-03JavaSE_循环
查看>>
Mysql初始化的命令
查看>>
day_21_0817_Mysql
查看>>
day-22 mysql_SQL 结构化查询语言
查看>>
MySQL关键字的些许问题
查看>>
浅谈HTML
查看>>
css基础
查看>>
HTML&CSS进阶
查看>>
Servlet进阶和JSP基础
查看>>
servlet&jsp 的使用以及jsp的历史遗留用法
查看>>
servlet中的cookie和session
查看>>