文章目录
- [1. 引言](#1. 引言)
- [2. 系统功能概述](#2. 系统功能概述)
- [3. 代码实现](#3. 代码实现)
-
- [3.1 初始化与主循环框架](#3.1 初始化与主循环框架)
-
- [3.1.1 主框架](#3.1.1 主框架)
- [3.2 添加学生功能(选项1)](#3.2 添加学生功能(选项1))
- [3.3 查询学生功能(选项2)](#3.3 查询学生功能(选项2))
- [3.4 修改成绩功能(选项3)](#3.4 修改成绩功能(选项3))
- [3.5 删除学生功能(选项4)](#3.5 删除学生功能(选项4))
- [3.6 显示所有学生(选项5)](#3.6 显示所有学生(选项5))
- [3.7 退出系统(其他输入)](#3.7 退出系统(其他输入))
- [4. 完整代码展示](#4. 完整代码展示)
- [5. 运行演示示例](#5. 运行演示示例)
- 总结:
1. 引言
本文将使用Python语言实现一个简单的学生成绩管理系统,系统通过控制台进行交互,能够完成添加、查询、修改、删除和显示所有学生信息的功能。本系统采用字典作为主要的数据存储结构,适合Python初学者学习和练习基础语法、字典操作以及流程控制。
2. 系统功能概述
列出系统支持的五大功能:
添加学生信息
查询学生信息
修改学生成绩
删除学生记录
显示所有学生信息
2.1要求如下
- 要求实现一个简单的学生成绩管理系统
- 可以添加学生姓名和成绩,并能查询、修改和删除记录
我们的学生管理系统 => 学生的姓名,分数 => 字典
思路:
1. 需要定义一个空的字典 => students = {}
2. 定义一个输入 =>
当输入1的时候,表示添加学生
当输入2的时候,表示查询学生
当输入3的时候,表示修改学生
当输入4的时候,表示删除学生
当输入5的时候,查询所有学生
当输入其他的时候,退出管理系统
3. 用户操作管理系统的步骤是不固定的,我们使用死循环
强调系统的特点:简单易用、基于字典存储、控制台交互
3. 代码实现
3.1 初始化与主循环框架
3.1.1 主框架
python
# 定义一个字典 => 存储学生的信息
students = {}
# 定义一个死循环 => 表示进入到系统当中
while True:
print("\n\n~~~学生成绩管理系统~~~")
print("输入 1 => 添加学生信息")
print("输入 2 => 查询学生信息")
print("输入 3 => 修改学生信息")
print("输入 4 => 删除学生信息")
print("输入 5 => 查询所有学生")
print("输入其他 => 退出管理系统")
# 请输入
choice = input("根据上述提示,请输入1 ~ 5")
3.2 添加学生功能(选项1)
python
if choice == '1':
print("\n\n-----添加学生信息-----")
name = input("请输入学生的姓名")
if name in students:
print(f"学生{name}已经存在了,不要重复添加")
else:
score = float(input("请输入学生的成绩"))
# {"张三":88,"李四":99}
students[name] = score
# 提示
print(f"当前学生{name},成绩{score},已经添加成功了")
内容说明:
目的就是输入学生的姓名和分数,扔到students里面去
注意:
判断在students里面有没有这个学生的信息
如果有,那么就提示当前学生信息已经存在了
如果没有,那么就添加这个学生的信息 => 姓名和成绩
3.3 查询学生功能(选项2)
python
elif choice == '2':
print("\n\n-----查询学生信息-----")
name = input("请输入你要查询的学生")
if name in students:
print(f"当前这个学生{name}的成绩是=>{students[name]}")
else:
print(f"当前系统没有学生{name},请检查输入")
内容说明:
需要输入学生的姓名
判断这个学生的姓名在students里面时候存在
如果存在,那么就获取students这个字典的value值
如果没有存在,提示当前学生{name}不存在,请检查输入
3.4 修改成绩功能(选项3)
python
elif choice == '3':
print("\n\n-----修改学生信息-----")
name = input("请输入需要修改的学生姓名")
if name in students:
score = float(input("请输入新的成绩"))
# 修改分数
students[name] = score
else:
print(f"当前系统没有学生{name},请检查输入")
内容说明:
获取这个学生的姓名
判断这个学生的姓名在系统students里面时候存在
如果存在,那么就提示输入新的成绩,然后再修改
如果不存在,那么就提示当前系统没有学生{name},请检查输入
3.5 删除学生功能(选项4)
python
elif choice == '4':
print("\n\n-----删除学生信息-----")
name = input("请输入你要删除的学生信息")
if name in students:
del students[name] # 删除字典里面的某一个键值对的元素
print(f"当前学生{name}已经删除成功了")
else:
print(f"当前系统没有学生{name},请检查输入")
内容说明:
获取这个学生的姓名
判断这个学生在系统里面时候存在
如果存在,那么就删除学生
如果不存在,那么就提示
3.6 显示所有学生(选项5)
python
elif choice == '5':
# print(f"当前学生有 => {students}")
# 遍历字典
for key, value in students.items():
print(f"学生姓名=>{key}___学生分数=>{value}")
3.7 退出系统(其他输入)
python
else:
print("\n\n-----退出管理系统-----")
break
print("程序结束")
4. 完整代码展示
python
# 定义一个字典 => 存储学生的信息
students = {}
# 定义一个死循环 => 表示进入到系统当中
while True:
print("\n\n~~~学生成绩管理系统~~~")
print("输入 1 => 添加学生信息")
print("输入 2 => 查询学生信息")
print("输入 3 => 修改学生信息")
print("输入 4 => 删除学生信息")
print("输入 5 => 查询所有学生")
print("输入其他 => 退出管理系统")
# 请输入
choice = input("根据上述提示,请输入1 ~ 5")
if choice == '1':
print("\n\n-----添加学生信息-----")
name = input("请输入学生的姓名")
if name in students:
print(f"学生{name}已经存在了,不要重复添加")
else:
score = float(input("请输入学生的成绩"))
# {"张三":88,"李四":99}
students[name] = score
# 提示
print(f"当前学生{name},成绩{score},已经添加成功了")
elif choice == '2':
print("\n\n-----查询学生信息-----")
name = input("请输入你要查询的学生")
if name in students:
print(f"当前这个学生{name}的成绩是=>{students[name]}")
else:
print(f"当前系统没有学生{name},请检查输入")
elif choice == '3':
print("\n\n-----修改学生信息-----")
name = input("请输入需要修改的学生姓名")
if name in students:
score = float(input("请输入新的成绩"))
# 修改分数
students[name] = score
else:
print(f"当前系统没有学生{name},请检查输入")
elif choice == '4':
print("\n\n-----删除学生信息-----")
name = input("请输入你要删除的学生信息")
if name in students:
del students[name] # 删除字典里面的某一个键值对的元素
print(f"当前学生{name}已经删除成功了")
else:
print(f"当前系统没有学生{name},请检查输入")
elif choice == '5':
# print(f"当前学生有 => {students}")
# 遍历字典
for key, value in students.items():
print(f"学生姓名=>{key}___学生分数=>{value}")
else:
print("\n\n-----退出管理系统-----")
break
print("程序结束")
5. 运行演示示例
第一步:添加两个学生的信息
第二步:查询学生的信息
第三步:修改学生信息并且查看是否修改成功
第四步:删除学生信息,并且查看是否删除成功
你可以跟着下面演示的试一下
python
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 1
-----添加学生信息-----
请输入学生的姓名: 张三
请输入学生的成绩: 92
当前学生张三,成绩92.0,已经添加成功了
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 1
-----添加学生信息-----
请输入学生的姓名: 李四
请输入学生的成绩: 85
当前学生李四,成绩85.0,已经添加成功了
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 5
-----所有学生信息-----
学生姓名=>张三___学生分数=>92.0
学生姓名=>李四___学生分数=>85.0
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 2
-----查询学生信息-----
请输入你要查询的学生: 张三
当前这个学生张三的成绩是=>92.0
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 3
-----修改学生信息-----
请输入需要修改的学生姓名: 张三
请输入新的成绩: 95
学生张三的成绩已修改为95.0
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 4
-----删除学生信息-----
请输入你要删除的学生信息: 李四
当前学生李四已经删除成功了
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 5
-----所有学生信息-----
学生姓名=>张三___学生分数=>95.0
~~~学生成绩管理系统~~~
输入 1 => 添加学生信息
输入 2 => 查询学生信息
输入 3 => 修改学生信息
输入 4 => 删除学生信息
输入 5 => 查询所有学生
输入其他 => 退出管理系统
根据上述提示,请输入1 ~ 5: 0
-----退出管理系统-----
程序结束
总结:
本文实现了一个简单但功能完整的学生成绩管理系统,涵盖了基本的增删改查操作。通过这个项目,我们学习了:
Python字典的基本操作(添加、查询、修改、删除)
使用无限循环创建交互式程序
用户输入的处理和验证
条件判断和流程控制