python学生管理系统开发
作者:银色亡灵 发布时间:2022-05-20 23:00:00
标签:python,学生管理系统
本文实例为大家分享了python学生管理系统开发的具体代码,供大家参考,具体内容如下
学生管理系统(基础版)
#定义一个函数,显示可以使用的功能列表给用户
def showInfo():
print("-"*30)
print(" 学生管理系统 ")
print(" 1.添加学生的信息")
print(" 2.删除学生的信息")
print(" 3.修改学生的信息")
print(" 4.查询学生的信息")
print(" 5.遍历所有学生的信息")
print(" 0.退出系统")
print( '-'*30)
#定义一个列表,用来存储多个学生的信息
students=[]
while True:
#把功能列表进行显示给用户
showInfo()
#提示用户选择功能
#获取用户选择的功能
key = int(input("请选择功能(序号):"))
#根据用户选择,完成相应功能
if key == 1:
print("您选择了添加学生信息功能")
stuName = input("请输入学生姓名:")
stuId = input("请输入学生学号(学号不可重复):")
stuAge = input("请输入学生年龄:")
#验证学号是否唯一
i = 0
leap = 0
for stu in students:
if stu['stuId'] == stuId:
leap = 1
break
else:
i = i + 1
if leap == 1:
print("输入学生学号重复,添加失败!")
else:
# 定义一个字典,存放单个学生信息
stuInfo = {}
stuInfo['stuName'] = stuName
stuInfo['stuId'] = stuId
stuInfo['stuAge'] = stuAge
# 单个学生信息放入列表
students.append(stuInfo)
print("添加成功!")
elif key == 2:
print("您选择了删除学生功能")
delId=input("请输入要删除的学生学号:")
#i记录要删除的下标,leap为标志位,如果找到leap=1,否则为0
i = 0
leap = 0
for stu in students:
if stu['stuId'] == delId:
leap = 1
break
else:
i=i+1
if leap == 0:
print("没有此学生学号,删除失败!")
else:
del students[i]
print("删除成功!")
elif key == 3:
print("您选择了修改学生信息功能")
alterId=input("请输入你要修改学生的学号:")
#检测是否有此学号,然后进行修改信息
i = 0
leap = 0
for stu in students:
if stu['stuId'] == alterId:
leap = 1
break
else:
i = i + 1
if leap == 1:
while True:
alterNum=int(input(" 1.修改学号\n 2.修改姓名 \n 3.修改年龄 \n 4.退出修改\n"))
if alterNum == 1:
newId=input("输入更改后的学号:")
#修改后的学号要验证是否唯一
i = 0
leap1 = 0
for stu1 in students:
if stu1['stuId'] == newId:
leap1 = 1
break
else:
i = i + 1
if leap1 == 1:
print("输入学号不可重复,修改失败!")
else:
stu['stuId']=newId
print("学号修改成功")
elif alterNum == 2:
newName=input("输入更改后的姓名:")
stu['stuName'] = newName
print("姓名修改成功")
elif alterNum == 3:
newAge=input("输入更改后的年龄:")
stu['stuAge'] = newAge
print("年龄修改成功")
elif alterNum == 4:
break
else:
print("输入错误请重新输入")
else:
print("没有此学号,修改失败!")
elif key == 4:
print("您选择了查询学生信息功能")
searchID=input("请输入你要查询学生的学号:")
#验证是否有此学号
i = 0
leap = 0
for stu in students:
if stu['stuId'] == searchID:
leap = 1
break
else:
i = i + 1
if leap == 0:
print("没有此学生学号,查询失败!")
else:
print("找到此学生,信息如下:")
print("学号:%s\n姓名:%s\n年龄:%s\n"%(stu['stuId'],stu['stuName'],stu['stuAge']))
elif key == 5:
#遍历并输出所有学生的信息
print('*'*20)
print("接下来进行遍历所有的学生信息...")
print("id 姓名 年龄")
for stu in students:
print("%s %s %s"%(stu['stuId'],stu['stuName'],stu['stuAge']))
print("*"*20)
elif key == 0:
#退出功能,尽量往不退出的方向引
quitconfirm = input("亲,真的要退出么 (yes或者no)??~~(>_<)~~??")
if quitconfirm == 'yes':
print("欢迎使用本系统,谢谢")
break;
else:
print("您输入有误,请重新输入")
学生管理系统(函数版)
#定义一个函数,显示可以使用的功能列表给用户
def showInfo():
'''
显示可以使用的功能列表给用户
'''
print("-"*30)
print(" 学生管理系统 ")
print(" 1.添加学生的信息")
print(" 2.删除学生的信息")
print(" 3.修改学生的信息")
print(" 4.查询学生的信息")
print(" 5.遍历所有学生的信息")
print(" 0.退出系统")
print( '-'*30)
#定义一个列表,用来存储多个学生的信息
students=[]
#添加学生函数
def addStudent():
'''
添加一个学生,需要传入姓名、年龄、学号
'''
#输入学员姓名、年龄、学号
stuName = input("请输入学生姓名:")
stuId = input("请输入学生学号(学号不可重复):")
stuAge = input("请输入学生年龄:")
#验证学号是否唯一 #i记录要删除的下标,leap为标志位,如果找到leap=1,否则为0
i = 0
leap = 0
#循环判断
for stu in students:
if stu['stuId'] == stuId:
leap = 1
break
else:
i = i + 1
#leap == 1代表学生学号
if leap == 1:
print("输入学生学号重复,添加失败!")
else:
# 定义一个字典,存放单个学生信息
stuInfo = {}
stuInfo['stuName'] = stuName
stuInfo['stuId'] = stuId
stuInfo['stuAge'] = stuAge
# 单个学生信息放入列表
students.append(stuInfo)
print("添加成功!")
#删除学生函数
def deleteStudent():
'''
根据学号删除学生,学号
'''
print("您选择了删除学生功能")
delId=input("请输入要删除的学生学号:")
#i记录要删除的下标,leap为标志位,如果找到leap=1,否则为0
i = 0
leap = 0
for stu in students:
if stu['stuId'] == delId:
leap = 1
break
else:
i=i+1
if leap == 0:
print("没有此学生学号,删除失败!")
else:
del students[i]
print("删除成功!")
#修改学生函数
def updateStudent():
'''
根据学号修改学生信息,学号
'''
print("您选择了修改学生信息功能")
alterId=input("请输入你要修改学生的学号:")
#检测是否有此学号,然后进行修改信息
i = 0
leap = 0
for stu in students:
if stu['stuId'] == alterId:
leap = 1
break
else:
i = i + 1
if leap == 1:
updateOperate()
else:
print("没有此学号,修改失败!")
def updateOperate():
'''
根据用户选择不同的操作来修改学生的信息
'''
while True:
alterNum=int(input(" 1.修改学号\n 2.修改姓名 \n 3.修改年龄 \n 4.退出修改\n"))
if alterNum == 1:
newId=input("输入更改后的学号:")
#修改后的学号要验证是否唯一
i = 0
leap1 = 0
for stu1 in students:
if stu1['stuId'] == newId:
leap1 = 1
break
else:
i = i + 1
if leap1 == 1:
print("输入学号不可重复,修改失败!")
else:
stu['stuId']=newId
print("学号修改成功")
elif alterNum == 2: #修改姓名操作
newName=input("输入更改后的姓名:")
stu['stuName'] = newName
print("姓名修改成功")
elif alterNum == 3: #修改年龄操作
newAge=input("输入更改后的年龄:")
stu['stuAge'] = newAge
print("年龄修改成功")
elif alterNum == 4:
break
else:
print("输入错误请重新输入")
#查询单个学生信息函数
def getStudentById():
'''
根据学号查询学生信息,需要传入学号
'''
print("您选择了查询学生信息功能")
searchID=input("请输入你要查询学生的学号:")
#验证是否有此学号
i = 0
leap = 0
for stu in students:
if stu['stuId'] == searchID:
leap = 1
break
else:
i = i + 1
if leap == 0:
print("没有此学生学号,查询失败!")
else:
print("找到此学生,信息如下:")
print("学号:%s\n姓名:%s\n年龄:%s\n"%(stu['stuId'],stu['stuName'],stu['stuAge']))
#查询所有学生信息函数
def getAllStudent():
'''
查询所有学生信息
'''
#遍历并输出所有学生的信息
print('*'*20)
print("接下来进行遍历所有的学生信息...")
print("stuId 姓名 年龄")
for stu in students:
print("%s %s %s"%(stu['stuId'],stu['stuName'],stu['stuAge']))
print("*"*20)
#主函数
def main():
'''
主函数:程序的入口
'''
while True:
#把功能列表进行显示给用户
showInfo()
#提示用户选择功能
#获取用户选择的功能
key = int(input("请选择功能(序号):"))
#根据用户选择,完成相应功能
if key == 1:
addStudent()
elif key == 2:
deleteStudent()
elif key == 3:
updateStudent()
elif key == 4:
getStudentById()
elif key == 5:
getAllStudent()
elif key == 0:
#退出功能,尽量往不退出的方向引
quitconfirm = input("亲,真的要退出么 (yes或者no)")
if quitconfirm == 'yes':
print("欢迎使用本系统,谢谢")
break;
else:
print("您输入有误,请重新输入")
main()
来源:https://blog.csdn.net/LYQ2332826438/article/details/82813238


猜你喜欢
- 微软的SQL Server 2005中用来替代数据传输服务(DTS)的SQL Server综合服务(SSIS),包含了很多工具用于导入数据并
- Python中有3种内建的数据结构:列表、元组和字典。参考简明Python教程1. 列表list是处理一组有序项目的数据结构,即你可以在一个
- 作者:HelloGitHub-追梦人物文中所涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库搜索是一个复杂的功能,但对于
- 先由exp把数据卸出到文件系统, 产生一个.dmp文件, 然后必要时再由imp将数据装入数据库. 对于一般中小型数据库来说, 全数据库的ex
- 今天小编给大家推荐一个超强交互式可视化绘制工具-python-highcharts,熟悉HightCharts绘图软件的小伙伴对这个不会陌生
- 我们一般在调试程序的时候,有些操作会莫名地失败,又没有错误消息提示,特别是在执行数据库操作的时候,明明执行过去了,可就是数据库里没有记录变动
- Pandas提供了便捷的方式对时间序列进行重采样,根据时间粒度的变大或者变小分为降采样和升采样:降采样:时间粒度变大。例如,原来是按天统计的
- 1.Python 程序from flask import Flaskapp = Flask(__name__)@app.route('
- 官网下载先去官网下载MySQL链接跳转的是mysql的下载地址:https://dev.mysql.com/downloads/mysql/
- Python socket网络编程初学 python,前段时间买了两本书《python 编程从入门到实践》《Python 核心编程第三版》,
- 1.Python虚拟环境创建首先我们为什么要创建虚拟环境呢?因为不同的项目所依赖的环境不一样,他们需要不同的第三方库等等。为了避免冲突,所以
- 前言既然组件不提供view服务引擎,那在编写应用网站的时候只能由javascript调用接口进行UI整合,这样编写javascript来访问
- 本文实例讲述了Python利用Scrapy框架爬取豆瓣电影。分享给大家供大家参考,具体如下:1、概念Scrapy是一个为了爬取网站数据,提取
- optimizer.param_groups: 是长度为2的list,其中的元素是2个字典;optimizer.param_groups[0
- 前言我们在写应用时,基本都会用到配置文件,从各种 shell 到 nginx 等,都有自己的配置文件。虽然这没有太多难度,但是配置项一般相对
- 一、简介抠图是用PS?用魔棒和快速选择工具?遇到复杂背景怎么办?最近发现一个神奇的工具——Remove Image Backgroundht
- 前段时间为准备百度面试恶补的东西,虽然最后还是被刷了,还是把那几天的“战利品”放点上来,算法一直是自己比较薄弱的地方,以后还要更加努力啊。下
- 本文实例讲述了Python yield的用法。分享给大家供大家参考,具体如下:yield的英文单词意思是生产,刚接触Python的时候感到非
- 【OpenCV】⚠️高手勿入! 半小时学会基本操作 ⚠️ 圆圈检测概述OpenCV 是一个跨平台的计算机视觉库, 支持多语言, 功能强大.
- 正在看的ORACLE教程是:Oracle数据库的备份与恢复。---- 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算