大家好,给大家分享一下基于python的学生信息管理系统参考文献,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!
这篇文章主要介绍了基于python的学生管理系统总结怎么写,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下不会c语言也可以学python。
一、学生管理系统
学生描述:学号、姓名、性别、成绩
学生管理系统功能:添加学生信息、不能添加重复学号学生、删除学生信息、根据学号修改学生信息、根据学号查询学生信息、显示所有学生信息、退出系统
二、代码说明
- 将每一个学生的信息放一个元组中,再把元组添加到列表中
- 元组 键值对儿 {‘uid’:uid,‘name’: name, ‘sex’: sex, ‘yuwen’: yuwen, ‘shuxue’: shuxue, ‘yingyu’: yingyu}
- 用到 字典的增删改查、列表的增删改查、函数的调用、列表的遍历、循环语句、判断语句等知识
三、代码实现
# 定义一个空列表,用来存放学生信息
student_list = []
def mean():
print(" ================================================================")
print("欢迎使用学生信息管理系统")
print("1.添加学生信息")
print("2.删除学生信息")
print("3.修改学生信息")
print("4.查询学生信息")
print("5.学生成绩统计")
print("6.查询所有学生信息")
print("7.退出系统")
print(" ===============================================================")
def addstudent():
# 声明使用全局变量student_list
global student_list
print("添加学生信息")
uid = input("请输入学生的学号:")
name = input("请输入学生的姓名:")
sex = input("请输入学生的性别:")
yuwen = float(input("请输入语文成绩: "))
shuxue = float(input("请输入数学成成绩: "))
yingyu = float(input("请输入英语成成绩 :"))
# 对数据进行验证,验证学号是否重复
for i in student_list:
# 如果重复
if i['uid'] == uid:
print("学号已存在")
break
else:
# 将学生的信息添加到student_list列表
student_info = {'uid':uid,'name': name, 'sex': sex, 'yuwen': yuwen, 'shuxue': shuxue, 'yingyu': yingyu}
# 打印添加的学生信息
print(student_info)
# print("学号:%s" % uid, "姓名:%s" % name, "性别%s" % sex,
# "语文成绩:%.2f,语文成绩:%.2f,语文成绩:%.2f" % (yuwen, shuxue, yingyu))
# student_list[uid] = student_info
student_list.append(student_info)
print("总成绩为:%.2f" % (yuwen+shuxue+yingyu))
avg_student = (yuwen+shuxue+yingyu)/3
print("平均成绩为:%.2f" % avg_student)
print("添加成功")
def delstudent():
print("删除学生信息")
# 根据学号删除信息
uid = input("请输入要删除学生的学号:")
# 遍历列表
for student in student_list:
# 如果找到学生信息
if student['uid'] == uid:
#删除学生
student_list.remove(student)
print(f"已删除{uid}学生信息")
else:
# 否则学生信息不存在
print(f"{uid}学生信息未保存")
def updatestudent():
print("修改学生信息")
#根据学号来修改
uid = input("请输入你要修改的学生学号:")
# 遍历列表
for student in student_list:
# 如果找到输入的学号
if student['uid'] == uid:
# 修改信息
student['uid'] = input("请输入修改后的学生学号:")
student['name'] = input("请输入修改后的学生姓名:")
student['sex'] = input("请输入修改后的学生性别:")
student['yuwen'] = float(input("请输入修改后的学生语文成绩:"))
student['shuxue'] = float(input("请输入修改后的学生数学成绩:"))
student['yingyu'] = float(input("请输入修改后的学生英语成绩:"))
print("该学生的信息已更新为:学号:%s" % student['uid'], "\n姓名:%s" % student['name'], "\n性别:%s" % student['sex'],
"\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (student['yuwen'], student['shuxue'], student['yingyu']))
# print("该学生信息已更新为:学号:{},姓名:{},性别:{},语文成绩:{},数学成绩:{},英语成绩:{}".format(student["uid"],student["name"], student["sex"], student["yuwen"],student["shuxue"],student["yingyu"]))
else:
# 否则,输入有误
print(f"输入有误,没用找到{uid}学生信息")
def selectstudent():
print("查询学生信息")
# global student_list
# 根据学号进行查找
select = input("请输入你要查询学生的学号:")
# 遍历列表,查找对应信息
for student in student_list:
#如果找到用户输入的学号
if student['uid'] == select:
# 输出查询的信息
print("学号:%s" % student['uid'], "\n姓名:%s" % student['name'], "\n性别:%s" % student['sex'],
"\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (student['yuwen'], student['shuxue'], student['yingyu']))
# print("学号:{}\n姓名:{}\n性别:{}\n语文成绩:{}\n数学成绩:{}\n英语成绩:{}"
# .format(student["uid"],student["name"], student["sex"], student["yuwen"],student["shuxue"],student["yingyu"]))
break
else:
# 跳出循环表示学号不存在
print(f"学号为{select}的学生信息未保存")
# print("学号:%s 姓名:%s 性别:%s 语文成绩:%s 数学成绩:%s 英语成绩:%s"
# %(uid, value['name'], value['sex'], value['yuwen'], value['shuxue'], value['yingyu']))
# print("学号:%s" % uid, "姓名:%s" % name, "性别%s" % sex,"语文成绩:%.2f,语文成绩:%.2f,语文成绩:%.2f" % (yuwen, shuxue, yingyu))
def selectAllStudent():
print("查询所有学生信息")
# 遍历列表,查找对应信息
for student in student_list:
# 输出查询的信息
print("学号:%s" % student['uid'], "\n姓名:%s" % student['name'], "\n性别:%s" % student['sex'],
"\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (
student['yuwen'], student['shuxue'], student['yingyu']))
def allstudent():
print("学生成绩统计")
# 根据学号统计
uid = input("请输入要统计的学生学号:")
# 遍历列表
for student in student_list:
# 如果输入学号存在
if student['uid'] == uid:
# 统计学生成绩
print("学生成绩\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (student['yuwen'], student['shuxue'], student['yingyu']))
print("总成绩为:%.2f" % (student['yuwen'] + student['shuxue'] + student['yingyu']))
avg_student = (student['yuwen'] + student['shuxue'] + student['yingyu']) / 3
print("平均成绩为:%.2f" % avg_student)
break
else:
print(f"{uid}学生信息未保存")
def main():
while True:
mean()
num = input("请输入:")
if num == "1":
addstudent()
elif num == "2":
delstudent()
elif num == "3":
updatestudent()
elif num == "4":
selectstudent()
elif num == "5":
allstudent()
elif num == "6":
selectAllStudent()
elif num == "7":
print("退出系统")
break
else:
print("你的输入有错误")
main()