学生信息添加和查找函数设计。 要求:存储学生信息的字典结构如下:{"name":"张三","gender":"男","age":20},设计一个学生列表来存储多个学生。设计至少2个函数,分别实现对学生信息的添加和查找功能。 学生添加的信息由用户输入。
时间: 2024-12-28 17:31:00 浏览: 6
可以设计一个简单的Python程序,使用字典列表来管理学生信息。以下是两个函数的设计:
```python
class StudentDatabase:
def __init__(self):
self.students = []
# 添加学生函数
def add_student(self, student_info):
if not isinstance(student_info, dict) or "name" not in student_info or "gender" not in student_info or "age" not in student_info:
raise ValueError("学生信息应包含姓名、性别和年龄字段")
name = student_info["name"]
gender = student_info["gender"]
age = student_info["age"]
new_student = {"name": name, "gender": gender, "age": age}
self.students.append(new_student)
print(f"已成功添加学生 {name}.")
# 查找学生函数
def find_student(self, name):
if not isinstance(name, str):
raise ValueError("查询名字应为字符串")
for student in self.students:
if student["name"] == name:
return student
return None
def display_students(self):
for student in self.students:
print(f"姓名:{student['name']}, 性别:{student['gender']}, 年龄:{student['age']}")
# 使用示例
db = StudentDatabase()
db.add_student({"name": "张三", "gender": "男", "age": 20})
db.find_student("张三") # 查找张三
```
在这个设计中,`add_student`函数用于添加新的学生信息到列表中,`find_student`函数用于按名称查找特定的学生。如果输入的数据不符合要求,这些函数会抛出异常。
阅读全文