写一个学生管理系统,最好用python。
我都没学过python呢,只好开始临时抱佛脚,再到网上找找有没有例子看看,下面是我参照另一个博主写的,中间有一些和我不能融合的错误,我已经解决了。
input("\n\nPress the enter key to exit.") def functionList(): # 定义功能菜单 print("---------请输入序号选择您要得功能---------") print("") print("-" * 14 + "1.查看学生信息" + "-" * 14) print("-" * 42) print("-" * 14 + "2.增加学生信息" + "-" * 14) print("-" * 42) print("-" * 14 + "3.删除学生信息" + "-" * 14) print("-" * 42) print("-" * 14 + "4.修改学生信息" + "-" * 14) print("-" * 42) print("-" * 14 + "5.查找系统学生" + "-" * 14) print("-" * 42) print("-" * 14 + "6.返回到上一级" + "-" * 14) print("-" * 42) print("-" * 14 + "7.退出学生系统" + "-" * 14) print("") def functionList2(): # 定义简单版功能菜单 print("---1:查看----2:增加-----3:删除----4:修改----") print("-------5:查找-------6:返回------7:退出------") def sexInputDebug(sexInput): # 检查性别输入是否正确 if len(sexInput) == 1 and (sexInput.lower() == "m" or sexInput.lower() == "f"): return True else: return False def ageInputDebug(ageInput): # 检查年龄输入是否正确 if len(ageInput) == 2 and ageInput.isdigit() == True: return True else: return False def IDInputDebug(IDInput): # 检查学号输入是否正确 if len(IDInput) == 8 and IDInput.isdigit() == True: return True else: return False def nameListFunction(): # 显示单个学生姓名信息 nameList = [] for i in range(len(studentList)): if studentList[i]["name"] not in nameList: nameList.append(studentList[i]["name"]) return nameList def findNameLocation(studentname): # 通过名字找到学生位置 for j in range(len(studentList)): if studentList[j]["name"] == studentname: return j def listFunction(): # 定义显示现有学生信息函数 for i in range(len(studentList)): studentInfo = studentList[i] print("姓名:%s--性别:%s--年龄:%s--学号:%s--备注:%s--" % ( studentInfo["name"], studentInfo["sex"], studentInfo["age"], studentInfo["studentID"], studentInfo["extra"])) print("") def addFunction(): # 定义增加学生函数 while True: numInput =input("-----修改已经存在的学生备注请输入1\n-----------增加一个新的学生请输入2:") if numInput == "2": while True: nameNoExistAdd = input("请输入您要增加的名字:") nameList = nameListFunction() if nameNoExistAdd in nameList: print("%s在学生管理系统中已经存在" % nameNoExistAdd) print("") else: newStudent = {} newStudent["name"] = nameNoExistAdd while True: sexInput = input("----请输入%s的性别--f:man--m:women:" % nameNoExistAdd) if sexInputDebug(sexInput) == True: newStudent["sex"] = sexInput break else: print("输入有误,请重新输入!") while True: ageInput = input("-------请输入%s2位数字表示的年龄:" % nameNoExistAdd) if ageInputDebug(ageInput) == True: newStudent["age"] = ageInput break else: print("输入有误,请重新输入!") while True: IDInput = input("----------请输入%s的8位学号:" % nameNoExistAdd) if IDInputDebug(IDInput) == True: newStudent["studentID"] = IDInput break else: print("输入有误,请重新输入!") extraInput = input("----------请输入%s的备注:" % nameNoExistAdd) newStudent["extra"] = extraInput studentList.append(newStudent) print("--------------%s已经添加到学生管理系统" % nameNoExistAdd) print("") print("姓名:%s--性别:%s--年龄:%s--学号:%s--备注:%s--" % ( newStudent["name"], newStudent["sex"], newStudent["age"], newStudent["studentID"], newStudent["extra"])) break break elif numInput == "1": while True: nameExistAdd = input("------请输入您要修改备注的学生的名字:") nameList = nameListFunction() if nameExistAdd in nameList: extraExistAdd = input("-----------------请输入您要添加的备注:") j = findNameLocation(nameExistAdd) studentList[j]["extra"] = extraExistAdd print("---------------备注已经添加--------------") print("") print("姓名:%s--性别:%s--年龄:%s--学号:%s--备注:%s--" % ( studentList[j]["name"], studentList[j]["sex"], studentList[j]["age"], studentList[j]["studentID"], studentList[j]["extra"])) print("") break else: print("-----------------您输入的姓名不存在") break else: print("----------------您输入的信息不正确") def delFunction(): # 定义删除学生的函数 while True: nameDel = input("---------------请输入您要删除的名字:") studentNameList = nameListFunction() if nameDel in studentNameList: j = findNameLocation(nameDel) del studentList[j] print("-------------%s已经从学生管理系统中删除" % nameDel) print("") break else: print("------------------您要删除的名字不存在!") def modifiFunction(): # 定义修改学生的函数 while True: nameModifi = input("----------------请输入要修改的名字:") studentNameList = nameListFunction() if nameModifi in studentNameList: print("------------请选择要修改的内容-----------") print("--------------1:修改姓名---------------") print("--------------2:修改性别---------------") print("--------------3:修改年龄---------------") print("--------------4:修改学号---------------") print("--------------5:修改备注---------------") while True: choiceInput = input("请输入:") if choiceInput == "1": newNameInput = input("----------请输入新的姓名:") j = findNameLocation(nameModifi) studentList[j]["name"] = newNameInput print("------------姓名已经更新------------") print("") break elif choiceInput == "2": while True: newSexInput = input("----请输入新的性别--f:man--m:women---") if sexInputDebug(newSexInput) == True: j = findNameLocation(nameModifi) studentList[j]["sex"] = newSexInput print("-------------性别已经更新-------------") print("") break else: print("---------输入有误,请重新输入!---------") break elif choiceInput == "3": while True: newAgeInput = input("----------请输入新的年龄:") if ageInputDebug(newAgeInput) == True: j = findNameLocation(nameModifi) studentList[j]["age"] = newAgeInput print("------------年龄已经更新------------") print("") break else: print("----------入有误,请重新输入!-------") break elif choiceInput == "4": while True: newIDInput = input("----------请输入新的学号:") if IDInputDebug(newIDInput) == True: j = findNameLocation(nameModifi) studentList[j]["studentID"] = newIDInput print("------------学号已经更新------------") print("") break else: print("----------入有误,请重新输入!-------") break elif choiceInput == "5": newExtraInput = input("----------请输入新的备注:") j = findNameLocation(nameModifi) studentList[j]["extra"] = newExtraInput print("------------备注已经更新------------") print("") break else: print("---------输入有误,请重新输入!-------") print("") break else: print("-----------------您输入的名字不存在!") print("") def searchFunction(): # 定义搜索学生的函数 nameSearch = input("-------------请输入要查找的名字:") print("") nameList = nameListFunction() if nameSearch in nameList: print("-----------------%s在学生管理系统中-------------------" % nameSearch) print("") j = findNameLocation(nameSearch) print("姓名:%s--性别:%s--年龄:%s--学号:%s--备注:%s--" % ( studentList[j]["name"], studentList[j]["sex"], studentList[j]["age"], studentList[j]["studenID"], studentList[j]["extra"])) print("") else: print("----------------%s不在学生管理系统中-----------------" % nameSearch) print("") # 默认学生信息系统内容 studentList = [{"name": "Frank", "sex": "f", "age": 33, "studentID": "312312", "extra": ""}, {"name": "Jane", "sex": "m", "age": 45, "studentID": "324235", "extra": ""}] # 函数主体 print("-" * 11 + "欢迎来到学生管理系统" + "-" * 11) print("") print("") functionList() while True: # 进入循环,根据序号选择操作 userInput = input("----------------请输入您要选择的功能序号:") print("") if userInput == "1": # 显示现有学生和返回 listFunction() functionList2() continue elif userInput == "2": # 使用增加函数和返回 addFunction() functionList2() continue elif userInput == "3": # 使用删除函数和返回 delFunction() functionList2() continue elif userInput == "4": # 使用修改函数和返回 modifiFunction() functionList2() continue elif userInput == "5": # 使用搜索函数和返回 searchFunction() functionList2() continue elif userInput == "6": # 返回功能列表 functionList() continue elif userInput == "7": # 退出 break else: print("----------输入有误,请重新输入!----------")
以下就是运行后的结果:
具体内容实现我还要研究研究,不过这个代码亲测已经可以运行了,小伙伴可以copy了。
过程中遇到的问题:
1. raw_input:我用的是3x的pyCharm,和2x的区别就在于不识别 raw_input,而要使用input。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
2024年11月26日
2024年11月26日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]