漯河市网站建设_网站建设公司_Ruby_seo优化
2025/12/25 20:21:33 网站建设 项目流程

🎓 学生成绩管理系统(Python 控制台版)

功能:
  1. 添加学生信息(姓名、学号、成绩)
  2. 查看所有学生信息
  3. 根据学号或姓名查找学生
  4. 修改学生成绩
  5. 删除学生信息
  6. 统计平均分、最高分、最低分
  7. 退出系统

✅ 项目代码:

# 学生成绩管理系统

students = [] # 全局列表存储学生信息,每个学生是一个字典

def add_student():
"""添加学生"""
name = input("请输入学生姓名: ")
student_id = input("请输入学生学号: ")

# 检查学号是否已存在
for s in students:
if s['学号'] == student_id:
print("❌ 学号已存在!")
return

try:
score = float(input("请输入学生成绩: "))
if score < 0 or score > 100:
print("⚠️ 成绩应在0-100之间!")
return
except ValueError:
print("❌ 输入的成绩无效,请输入数字!")
return

student = {
'姓名': name,
'学号': student_id,
'成绩': score
}
students.append(student)
print(f"✅ 学生 {name} 添加成功!")

def view_all_students():
"""查看所有学生"""
if not students:
print("📭 暂无学生信息。")
return
print("\n" + "="*50)
print("所有学生信息:")
print("="*50)
for s in students:
print(f"姓名: {s['姓名']}, 学号: {s['学号']}, 成绩: {s['成绩']}")
print("="*50)

def search_student():
"""查找学生"""
if not students:
print("📭 暂无学生信息。")
return
keyword = input("请输入要查找的姓名或学号: ")
found = False
for s in students:
if keyword == s['姓名'] or keyword == s['学号']:
print(f"🔍 找到学生: 姓名: {s['姓名']}, 学号: {s['学号']}, 成绩: {s['成绩']}")
found = True
if not found:
print("❌ 未找到该学生。")

def update_student():
"""修改学生成绩"""
if not students:
print("📭 暂无学生信息。")
return
student_id = input("请输入要修改的学生学号: ")
for s in students:
if s['学号'] == student_id:
try:
new_score = float(input(f"当前成绩为 {s['成绩']},请输入新成绩: "))
if new_score < 0 or new_score > 100:
print("⚠️ 成绩应在0-100之间!")
return
s['成绩'] = new_score
print("✅ 成绩更新成功!")
except ValueError:
print("❌ 输入无效!")
return
print("❌ 未找到该学生。")

def delete_student():
"""删除学生"""
if not students:
print("📭 暂无学生信息。")
return
student_id = input("请输入要删除的学生学号: ")
for i, s in enumerate(students):
if s['学号'] == student_id:
confirm = input(f"确定要删除学生 {s['姓名']} 吗?(y/n): ")
if confirm.lower() == 'y':
students.pop(i)
print("✅ 学生删除成功!")
else:
print("❌ 取消删除。")
return
print("❌ 未找到该学生。")

def show_statistics():
"""显示统计信息"""
if not students:
print("📭 暂无学生成绩数据。")
return
scores = [s['成绩'] for s in students]
avg_score = sum(scores) / len(scores)
max_score = max(scores)
min_score = min(scores)
print("\n📊 成绩统计:")
print(f"总人数: {len(students)}")
print(f"平均分: {avg_score:.2f}")
print(f"最高分: {max_score}")
print(f"最低分: {min_score}")

def main():
"""主菜单"""
print("🎓 欢迎使用学生成绩管理系统")
while True:
print("\n" + "-"*40)
print("请选择功能:")
print("1. 添加学生")
print("2. 查看所有学生")
print("3. 查找学生")
print("4. 修改学生成绩")
print("5. 删除学生")
print("6. 显示统计信息")
print("7. 退出系统")
choice = input("请输入选项 (1-7): ")

if choice == '1':
add_student()
elif choice == '2':
view_all_students()
elif choice == '3':
search_student()
elif choice == '4':
update_student()
elif choice == '5':
delete_student()
elif choice == '6':
show_statistics()
elif choice == '7':
print("👋 感谢使用,再见!")
break
else:
print("❌ 无效输入,请重新选择。")

if __name__ == "__main__":
main()


🔧 如何运行?

  1. 将上述代码保存为student_grade_system.py
  2. 在终端运行:
    python student_grade_system.py

💡 项目扩展建议(进阶练习):

  • 使用文件(如students.txt或 JSON)持久化保存数据
  • 支持多门课程成绩(如语文、数学)
  • 使用类(StudentGradeSystem)重构代码
  • 添加图形界面(Tkinter 或 PyQt)
  • 排序功能:按成绩排序显示

这个项目涵盖了输入输出、循环、条件判断、列表和字典操作等基础知识点。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询