利用字典和列表创建创建班级通讯录,并显示如下操作菜单,输入相应的菜单编号,实现相应功能。
时间: 2024-10-23 20:18:35 浏览: 38
当你需要创建一个班级通讯录,可以利用Python的数据结构如字典(用于存储学生信息,键值对形式)和列表(用于存储学生的列表)。下面是一个简单的示例:
```python
class Student:
def __init__(self, name, id):
self.name = name
self.id = id
# 创建空字典用于保存学生信息,键是ID,值是Student对象
class_book = {}
# 创建空列表作为学生列表
student_list = []
def display_menu():
print("1. 添加学生")
print("2. 查看所有学生")
print("3. 删除学生")
print("4. 按姓名搜索学生")
print("5. 退出")
while True:
choice = input("请输入您的选择(1-5): ")
if choice == "1":
id = int(input("请输入学生ID: "))
name = input("请输入学生名字: ")
student = Student(name, id)
class_book[id] = student
student_list.append(student)
print(f"学生 {name} 已添加.")
elif choice == "2":
for student in student_list:
print(f"ID: {student.id}, Name: {student.name}")
elif choice == "3":
id = int(input("请输入要删除的学生ID: "))
if id in class_book:
del class_book[id]
student_list.remove(class_book[id])
print(f"已删除ID为{id}的学生.")
else:
print("该学生不存在.")
elif choice == "4":
search_name = input("请输入要查找的学生名字: ")
found_students = [student for student in student_list if student.name == search_name]
if found_students:
print(f"找到以下学生:")
for student in found_students:
print(f"ID: {student.id}, Name: {student.name}")
else:
print("未找到匹配的学生.")
elif choice == "5":
break
else:
print("无效的选择,请重新输入.")
```
在这个例子中,你可以通过输入数字选择不同的功能,比如添加新学生、查看全部学生、删除某个学生或按姓名搜索等。
阅读全文