学生管理系统
文件版的学生管理系统连接
https://blog.youkuaiyun.com/LanlanDeming/article/details/103429173
先说一下系统的构思吧~~~~
- 首先要用字典保存学生的信息
- 系统要包含增删改查这4个基本功能
- 在增删改查的时候应该先遍历一下系统中有没有该学生信息,有输出该生已经存在, 没有再做接下来的判断,期间要用到for循环和if…else判断语句
- 具体步骤如下
- 搭建框架
- 完成每个部分的代码
- 添加学生:(假设名字唯一),通过input()获取学生的信息,将学生添加到字典中,再将学生添加到学生列表中,最后优化一下(添加学生之前,判断下学生是否存在)
- 查看所有学生(for循环遍历学生列表)
- 查看学生: 先判断学生是否存在,存在的话打印学生信息,不存在就直接返回
- 删除学生: 先判断学生是否存在,存在删除学生 remive(stu),不存在的话直接返回
- 修改学生: 还是先判断学生是否存在,存在修改学生(修改字典中的value值)不存在,结束返回
# 搭建框架
def show_menu():
print('-----学生管理系统-----')
print('1.添加学生')
print('2.删除学生')
print("3.修改学生")
print("4.查询学生")
print('5.查询所有学生')
print('6.退出系统')
# 添加学生
def insert_student():
"""添加学生"""
# 获取学生信息
name = input('请输入姓名')
for stu in students_list:
if stu['name'] == name:
print('****该生已经存在****')
return
age = int(input("请输入年龄"))
gender = input('请输入性别')
# 将这个学生保存到一个字典中
studet_dict = {'name': name, 'age': age,"gender": gender}
# 将这个学生添加到学生列表中
students_list.append(studet_dict)
# 查询所有的学生
def show_all():
"""查询所有学生"""
print("%-9s%-7s%s" % ("姓名", "年龄", "性别"))
for stu in students_list:
print(f"{stu['name']:11}{stu['age']:<8d}{stu['gender']}")
def search_student():
"""查找学生"""
name = input('请输入学生姓名')
# for循环遍历学生列表
for stu in students_list:
# 判断学生是否存在学生列表
if stu['name'] == name:
print(f"{stu['name']:12}{stu['age']:<8d}{stu['gender']}")
# 找到之后, 不需要遍历
break
else:
print("****该生不存在****")
# 修改学生
def modify_student():
"""修改学生"""
name = input('请输入要修改的学生姓名')
# for 循环遍历学生列表
for stu in students_list:
# 判断学生是否存在
if stu['name'] == name:
age = int(input('请输入新的年龄'))
gender = input("请输入新的性别")
# 修改学生列表中学生的 age 和 gender
stu['age'] = age
stu['gender'] = gender
break
else:
print('****学生不存在****')
# 删除学生
def delete_student():
"""删除学生"""
name = input("请输入想要删除的学生姓名")
# for 循环遍历学生列表
for stu in students_list:
# 判断学生是否在学生列表中存在
if stu['name'] == name:
# 删除学生
students_list.remove(stu)
print('删除成功')
break
else:
print("****学生不存在****")
# 定义学生列表
students_list = []
# 循环目录
while True:
show_menu()
option = input('请输入要进行的操作编号')
if option == '1':
print("****添加学生****")
insert_student()
elif option == '2':
print("****删除学生****")
delete_student()
elif option == '3':
print('****修改学生****')
modify_student()
elif option == '4':
print('****查询学生****')
search_student()
elif option == '5':
print('****查询所有学生****')
show_all()
elif option == '6':
print('****退出系统****')
# 退出系统要终止本次 while 循环, 不然会死循环
break
else:
print('!!!!输入有误,请重新再试!!!!')