|
|
|
|
@ -0,0 +1,85 @@
|
|
|
|
|
#coding=utf-8
|
|
|
|
|
|
|
|
|
|
# 初始化存储学生信息的列表(元素为字典)
|
|
|
|
|
students = []
|
|
|
|
|
|
|
|
|
|
def add_student():
|
|
|
|
|
"""添加学生信息"""
|
|
|
|
|
print("\n===== 添加学生 =====")
|
|
|
|
|
student_id = input("请输入学号:")
|
|
|
|
|
# 检查学号是否重复
|
|
|
|
|
for stu in students:
|
|
|
|
|
if stu["学号"] == student_id:
|
|
|
|
|
print("错误:该学号已存在!")
|
|
|
|
|
return#退出函数,不执行后面
|
|
|
|
|
name = input("请输入姓名:")
|
|
|
|
|
age = input("请输入年龄:")
|
|
|
|
|
# 年龄简单校验
|
|
|
|
|
if not age.isdigit():#是不是数字
|
|
|
|
|
print("错误:年龄必须是数字!")
|
|
|
|
|
return
|
|
|
|
|
# 添加到列表
|
|
|
|
|
students.append({
|
|
|
|
|
"学号": student_id,
|
|
|
|
|
"姓名": name,
|
|
|
|
|
"年龄": int(age)
|
|
|
|
|
})#添加一个新元素
|
|
|
|
|
print("添加成功!")
|
|
|
|
|
|
|
|
|
|
def delete_student():
|
|
|
|
|
"""删除学生信息(按学号删除)"""
|
|
|
|
|
print("\n===== 删除学生 =====")
|
|
|
|
|
if not students:#空列表
|
|
|
|
|
print("暂无学生信息,无法删除!")
|
|
|
|
|
return
|
|
|
|
|
student_id = input("请输入要删除的学生学号:")
|
|
|
|
|
# 查找并删除学生
|
|
|
|
|
for i, stu in enumerate(students):#索引列表
|
|
|
|
|
if stu["学号"] == student_id:#查找学号匹配的学生
|
|
|
|
|
del students[i]#删除索引为i的元素
|
|
|
|
|
print("删除成功!")
|
|
|
|
|
return
|
|
|
|
|
print("未找到该学号的学生!")
|
|
|
|
|
|
|
|
|
|
def query_students():
|
|
|
|
|
"""查询所有学生信息"""
|
|
|
|
|
print("\n===== 查询学生 =====")
|
|
|
|
|
if not students:
|
|
|
|
|
print("暂无学生信息!")
|
|
|
|
|
return
|
|
|
|
|
# 格式化输出
|
|
|
|
|
print(f"{'学号':<10}{'姓名':<10}{'年龄':<5}")#左对齐,占几个字符
|
|
|
|
|
print("-" * 25)#打印分割线
|
|
|
|
|
for stu in students:
|
|
|
|
|
print(f"{stu['学号']:<10}{stu['姓名']:<10}{stu['年龄']:<5}")
|
|
|
|
|
|
|
|
|
|
def get_total_count():
|
|
|
|
|
"""统计学生总人数"""
|
|
|
|
|
print(f"\n当前学生总人数:{len(students)}")
|
|
|
|
|
|
|
|
|
|
def main():
|
|
|
|
|
"""主菜单"""
|
|
|
|
|
while True:#无限循环
|
|
|
|
|
print("\n===== 学生信息管理系统 =====")#标题
|
|
|
|
|
print("1. 添加学生")#功能选项
|
|
|
|
|
print("2. 删除学生")
|
|
|
|
|
print("3. 查询所有学生")
|
|
|
|
|
print("4. 统计总人数")
|
|
|
|
|
print("5. 退出系统")
|
|
|
|
|
choice = input("请选择功能(1-5):")
|
|
|
|
|
if choice == "1":
|
|
|
|
|
add_student()
|
|
|
|
|
elif choice == "2":
|
|
|
|
|
delete_student()
|
|
|
|
|
elif choice == "3":
|
|
|
|
|
query_students()
|
|
|
|
|
elif choice == "4":
|
|
|
|
|
get_total_count()
|
|
|
|
|
elif choice == "5":
|
|
|
|
|
print("退出系统,感谢使用!")
|
|
|
|
|
break#退出循环
|
|
|
|
|
else:
|
|
|
|
|
print("输入错误,请选择1-5的数字!")
|
|
|
|
|
#只有直接运行这个文件时,代码才会执行
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
main()#从这里执行
|