# 学生信息管理系统
# 建立一个学生管理信息系统可以对学生信息进行增删改查操作
# step1:
'''
stu1 = {"name":"小张","age":10,"gender":"male","grand":"3(1)"}
stu2 = {"name":"小王","age":13,"gender":"female","grand":"3(2)"}
stu3 = {"name":"小赵","age":12,"gender":"male","grand":"3(4)"}
stu4 = {"name":"小周","age":11,"gender":"female","grand":"3(6)"}
students = [stu1,stu2,stu3,stu4]
while True:
print("\n\n--------学生信息管理系统--------")
print("1.增加学生\n2.删除学生\n3.修改学生\n4.查找学生\n5.退出程序")
num = int(input("请输入您要操作的编号"))
# 1.增加学生
if num == 1:
pass
# 2.删除学生
elif num == 2:
pass
# 3.修改学生
elif num == 3:
pass
# 4.查找学生
elif num == 4:
pass
# 5.退出程序
elif num == 5:
pass
else:
print("您输入有误,请重新输入")
'''
# step2:
stu1 = {"name": "小张", "age": 10, "gender": "male", "grand": "3(1)"}
stu2 = {"name": "小王", "age": 13, "gender": "female", "grand": "3(2)"}
stu3 = {"name": "小赵", "age": 12, "gender": "male", "grand": "3(4)"}
stu4 = {"name": "小周", "age": 11, "gender": "female", "grand": "3(6)"}
students = [stu1, stu2, stu3, stu4]
while True:
print("\n\n--------学生信息管理系统--------")
print("1.增加学生\n2.删除学生\n3.修改学生\n4.查找学生\n5.退出程序")
num = int(input("请输入您要操作的编号"))
# 1.增加学生
if num == 1:
# 让用户输入信息
name = input("请输入要增加学生的姓名:")
age = int(input("请输入要增加学生的年龄:"))
gender = input("请输入要增加学生的性别:")
grand = input("请输入要增加学生的班级:")
# 将学生信息添加到字典中
stu5 = {"name": name, "age": age, "gender": gender, "grand": grand}
students.append(stu5) # stu5只是临时变量,每次添加的学生信息都借用临时变量添加进students列表
# 刷新学生信息(遍历学生信息)以确认是否添加成功
for stu in students:
print("----------------") # 使遍历输出的学生信息分行显示,运行显示结果更友好
for key, value in stu.items():
print(key, value)
# 2.删除学生
elif num == 2:
print("1.按照序号删除\n2.全部删除")
choose = int(input("请选择你要的操作:"))
if choose == 1:
stu_number = int(input("请选择要删除学生的编号"))
students.pop(stu_number - 1) # 删除列表指定索引下标项的方法可查阅之前课件,学生编号比索引下标大1,所以需减1
print("该学生已经被删除")
# 刷新学生信息(遍历学生信息)以确认是否删除成功
for stu in students:
print("----------------") # 使遍历输出的学生信息分行显示,运行显示结果更友好
for key, value in stu.items():
print(key, value)
elif choose == 2:
yes_no = input("确定要清空所有数据吗?yes/no:")
if yes_no == "yes":
students.clear() # 清空列表数据方法可查阅之前课件
print("学生数据已被清空")
else:
print("选择有误")
# 3.修改学生
elif num == 3:
print("当前有" + str(len(students)) + "个学生") # 需先提示一共有多少名学生,以便输入需要修改学生的编号
stu_number = int(input("请输入要修改学生的编号"))
students.pop(stu_number - 1) # 所谓修改就是先删除后添加,这一步就是先删除需要被修改的信息,下面可复制上面添加学生代码
# 让用户输入信息
name = input("请输入要修改学生的姓名:")
age = int(input("请输入要修改学生的年龄:"))
gender = input("请输入要修改学生的性别:")
grand = input("请输入要修改学生的班级:")
# 将学生信息添加到字典中
stu5 = {"name": name, "age": age, "gender": gender, "grand": grand}
students.insert(stu_number - 1, stu5) # append是添加到列表最后一位,insert添加到指定下标位置
# 刷新学生信息(遍历学生信息)以确认是否修改成功
for stu in students:
print("----------------") # 使遍历输出的学生信息分行显示,运行显示结果更友好
for key, value in stu.items():
print(key, value)
# 4.查找学生
elif num == 4:
print("当前有" + str(len(students)) + "个学生") # 需先提示一共有多少名学生
chosen = int(input("1.查看所有学生信息\n2.查看指定学生信息\n请选择:"))
if chosen == 1:
# 查看学生信息(遍历学生信息)
for stu in students:
print("----------------") # 使遍历输出的学生信息分行显示,运行显示结果更友好
for key, value in stu.items():
print(key, value)
elif chosen == 2:
stu_number = int(input("请输入需要查看学生编号:"))
for key, value in students[stu_number - 1].items():
print(key, value)
else:
print("选择有误")
# 5.退出程序
elif num == 5:
yes_no = input("您确定要退出吗?yes/no:")
if yes_no == "yes":
print("程序已关闭,欢迎下次再来!")
break
else:
print("您输入有误,请重新输入")