下面是使用Python实现学生信息管理系统的完整攻略:
构思
在开始编写代码之前,我们需要先明确这个学生信息管理系统要实现哪些功能。可以考虑以下几个方面:
- 添加学生信息
- 查询学生信息
- 修改学生信息
- 删除学生信息
每个学生的信息可能包括姓名、性别、年龄、班级、学号等等。
设计数据结构
在明确功能后,我们需要根据这些需求设计相应的数据结构。可以考虑使用一个列表来保存所有学生的信息,每个学生的信息可以用一个字典来表示。
例如:
# 初始学生列表
students = [
{"name": "张三", "gender": "男", "age": 18, "class": 1, "id": "1001"},
{"name": "李四", "gender": "女", "age": 17, "class": 2, "id": "1002"},
{"name": "王五", "gender": "男", "age": 19, "class": 3, "id": "1003"}
]
实现功能
有了数据结构,我们就可以开始实现各个功能了。下面介绍每个功能的实现方式。
添加学生信息
可以设计一个函数来实现添加学生信息的功能。函数的实现可以分为以下几步:
- 提示用户输入要添加的学生信息。
- 将输入的学生信息组成一个字典。
- 将新的字典添加到学生列表中。
例如:
# 添加学生信息函数
def add_student(students):
name = input("请输入姓名:")
gender = input("请输入性别:")
age = int(input("请输入年龄:"))
class_id = int(input("请输入班级:"))
id = input("请输入学号:")
student = {"name": name, "gender": gender, "age": age, "class": class_id, "id": id}
students.append(student)
print("添加成功!")
查询学生信息
查询学生信息可以分为两种情况:查询所有学生的信息和查询某个具体学生的信息。可以分别设计两个函数来实现。
# 查询所有学生信息函数
def query_all_students(students):
if students:
print("当前所有学生信息如下:")
for student in students:
print(f"姓名:{student['name']},性别:{student['gender']},年龄:{student['age']},班级:{student['class']},学号:{student['id']}")
else:
print("当前没有学生信息!")
# 查询某个具体学生信息函数
def query_student_by_id(students):
id = input("请输入要查询的学生学号:")
for student in students:
if student['id'] == id:
print(f"姓名:{student['name']},性别:{student['gender']},年龄:{student['age']},班级:{student['class']},学号:{student['id']}")
break
else:
print("未找到该学生信息!")
修改学生信息
修改学生信息可以分为两步:
- 先查询到要修改的学生信息。
- 修改该学生的信息。
例如:
# 修改学生信息函数
def modify_student(students):
id = input("请输入要修改的学生学号:")
for student in students:
if student['id'] == id:
print(f"当前该学生的信息如下:姓名:{student['name']},性别:{student['gender']},年龄:{student['age']},班级:{student['class']},学号:{student['id']}")
student['name'] = input("请输入新的姓名:")
student['gender'] = input("请输入新的性别:")
student['age'] = int(input("请输入新的年龄:"))
student['class'] = int(input("请输入新的班级:"))
student['id'] = input("请输入新的学号:")
print("修改成功!")
break
else:
print("未找到该学生信息!")
删除学生信息
删除学生信息可以先查询到要删除的学生,再将其从列表中删除。
例如:
# 删除学生信息函数
def delete_student(students):
id = input("请输入要删除的学生学号:")
for student in students:
if student['id'] == id:
students.remove(student)
print("删除成功!")
break
else:
print("未找到该学生信息!")
示例演示
下面给出两个示例,演示如何使用上述函数实现学生信息管理系统。
示例1
在该示例中,我们先查询当前所有学生的信息,然后向系统中添加一个新的学生,接着查询刚刚添加的学生信息,再修改该学生信息,最后再次查询当前所有学生信息并删除刚刚添加的学生。
# 示例1
students = [
{"name": "张三", "gender": "男", "age": 18, "class": 1, "id": "1001"},
{"name": "李四", "gender": "女", "age": 17, "class": 2, "id": "1002"},
{"name": "王五", "gender": "男", "age": 19, "class": 3, "id": "1003"}
]
query_all_students(students)
add_student(students)
query_student_by_id(students)
modify_student(students)
query_all_students(students)
delete_student(students)
query_all_students(students)
运行上述代码,输出结果如下:
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
请输入姓名:赵六
请输入性别:男
请输入年龄:20
请输入班级:1
请输入学号:1004
添加成功!
请输入要查询的学生学号:1004
姓名:赵六,性别:男,年龄:20,班级:1,学号:1004
请输入要修改的学生学号:1004
当前该学生的信息如下:姓名:赵六,性别:男,年龄:20,班级:1,学号:1004
请输入新的姓名:赵四
请输入新的性别:男
请输入新的年龄:19
请输入新的班级:2
请输入新的学号:1005
修改成功!
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
姓名:赵四,性别:男,年龄:19,班级:2,学号:1005
请输入要删除的学生学号:1005
删除成功!
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
示例2
在该示例中,我们先创建一个空的学生列表,然后查询当前所有学生的信息(此时应输出"当前没有学生信息!"),接着向系统中添加三个学生,查询某个具体学生的信息,再次查询当前所有学生信息并删除一个学生。
# 示例2
students = []
query_all_students(students)
add_student(students)
add_student(students)
add_student(students)
query_student_by_id(students)
query_all_students(students)
delete_student(students)
query_all_students(students)
运行上述代码,输出结果如下:
当前没有学生信息!
请输入姓名:张三
请输入性别:男
请输入年龄:18
请输入班级:1
请输入学号:1001
添加成功!
请输入姓名:李四
请输入性别:女
请输入年龄:17
请输入班级:2
请输入学号:1002
添加成功!
请输入姓名:王五
请输入性别:男
请输入年龄:19
请输入班级:3
请输入学号:1003
添加成功!
请输入要查询的学生学号:1002
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
请输入要删除的学生学号:1002
删除成功!
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用python实现学生信息管理系统 - Python技术站