模拟通讯录的数据查询功能。要求编写程序 首先输出字典原始数据,再调用menu函数输出用户选择界面,等待用户输入:(1)输入‘4’ 进行搜索学生,输入姓名,如果该姓名已存在,则在一行中依次输出姓名,电话,学院信息,数据后以空格间隔,换行输出“Success”的提示信息,如果不存在,给出“No Record”提示信息。无论是否查询成功,结束后需要输出操作后的字典数据。(2)如果输入其他选项,无需读入姓名,直接输出“ERROR”。
时间: 2024-03-10 17:50:18 浏览: 186
好的,我可以提供以下代码:
```python
# 定义通讯录字典
contacts = {
'张三': {
'phone': '123456789',
'school': '清华大学'
},
'李四': {
'phone': '987654321',
'school': '北京大学'
}
}
# 输出原始数据
print('原始数据为:')
for name, info in contacts.items():
print(name, info['phone'], info['school'])
# 定义 menu 函数
def menu():
print('请选择操作:')
print('1. 添加学生')
print('2. 删除学生')
print('3. 修改学生信息')
print('4. 搜索学生')
print('5. 退出程序')
choice = input()
return choice
# 主程序
while True:
choice = menu()
if choice == '4':
name = input('请输入学生姓名:')
if name in contacts:
info = contacts[name]
print(name, info['phone'], info['school'])
print('Success')
else:
print('No Record')
print('操作后的字典数据为:')
for name, info in contacts.items():
print(name, info['phone'], info['school'])
elif choice == '5':
print('程序已退出')
break
else:
print('ERROR')
```
这个程序会先定义一个通讯录字典,然后输出字典的原始数据。接着,定义了 menu 函数,用于输出用户选择界面。在主程序中,使用一个 while 循环不断等待用户输入,根据用户的选择进行相应的操作。如果用户选择了搜索学生,程序会读入学生姓名,如果该姓名已存在于通讯录字典中,则输出该学生的信息和“Success”提示信息,否则输出“No Record”提示信息。无论是否查询成功,程序都会输出操作后的字典数据。如果用户选择了退出程序,则程序结束。
阅读全文