请以此代码输出对应的程序流程图:"简易通讯录程序""" import os,json ab={}#通讯录保存在字典name:tel #从JSON文件中读取通讯录 if os.path.exists("addressbook.json"): with open(r"addressbook.json","r",encoding="utf-8") as f: ab=json.load(f) while True: print("|---欢迎使用通讯录程序---|") print("|---1:显示通讯录清单------|") print("|---2:欢迎使用通讯录程序--|") print("|---3:插入新的联系人------|") print("|---4:删除已有联系人---|") print("|---0:退出------|") choice=input('请选择功能菜单(0-4):') if choice=='1': if(len(ab)==0): print("通讯录为空") else: for k,v in ab.items(): print("姓名={},联系电话={}".format(k,v)) elif choice=='2': name=input("请输入联系人姓名:") if(name not in ab): ask=input("联系人不存在,是否增加用户资料(Y/N)") if ask in ["Y","y"]: tel=input("请输入用户联系电话:") ab[name]=tel else: print("联系人信息:{}{}".format(name,ab[name])) print( ) elif choice=='3': name=input("请输入联系人姓名:") if(name in ab): print("已存在联系人:{}{}".format(name,ab[name])) ask=input("是否修改用户资料(Y/N)") if ask in ["Y","y"]: tel=input("请输入用户联系电话:") dict[name]=tel else: tel=input("请输入用户联系电话:") ab[name]=tel print( ) elif choice=='4': name=input("请输入联系人姓名:") if(name not in ab): print("联系人不存在:{}".format(name)) else: tel=ab.pop(name) print("删除联系人:{}{}".format(name,tel)) elif choice=='0':#保存到JSON文件并退出循环 with open(r'addressbook.json','w',encoding='utf-8')as f: json.dump(ab,f) break
时间: 2024-01-09 10:06:04 浏览: 59
简单的通讯录程序
抱歉,我的回答中无法插入图片,但是我可以文字描述流程图。以下是程序的流程图:
开始 --> 读取通讯录文件 --> 进入主循环 --> 显示功能菜单 --> 用户选择功能 -->
- 显示通讯录清单:判断通讯录是否为空,若不为空则遍历通讯录并输出所有联系人的姓名和电话号码。
- 欢迎使用通讯录程序:用户输入联系人姓名,判断是否在通讯录中。若不存在,则询问用户是否增加新的联系人。若存在,则输出联系人的姓名和电话号码。
- 插入新的联系人:用户输入联系人姓名,判断是否在通讯录中。若存在,则询问用户是否要修改联系人信息。若不存在,则让用户输入新的联系人的电话号码并添加到通讯录中。
- 删除已有联系人:用户输入联系人姓名,判断是否在通讯录中。若不存在,则输出联系人不存在的信息。若存在,则删除该联系人,并输出删除联系人的姓名和电话号码。
- 退出:保存通讯录到JSON文件中并退出循环。
循环结束 --> 程序结束
阅读全文