Python程序:做一通讯录程序,通信录保存在字典中name:tel,从JSON文件中读取通信录,支持查询、插入、删除操作

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)

print("|---欢迎使用通信录程序---|","|---1:  显示通讯录清单---|","|---2:  查询联系人资料---|","|---3:  插入新的联系人---|","|---4:  删除已有联系人---|","|---0:  退出通信录程序---|",sep='\n')

def show():
    print("通讯录清单")
    if len(ab) == 0:
        print("通讯录为空")
    for name, tel in ab.items():
        print(name, tel)

def search():
    name = input("请输入联系人姓名:")
    if name in ab:
        print(name, ab[name])
    else:
        print("联系人不存在")
def insert():
    name = input("请输入联系人姓名:")
    if name in ab:
        print("联系人已存在")
        return
    tel = input("请输入联系人电话:")
    ab[name] = tel
    print("联系人插入成功")
def delete():
    name = input("请输入联系人姓名:")
    if name in ab:
        del ab[name]
        print("联系人删除成功")
    else:
        print("联系人不存在")

while True:
    choice = input("请输入您的选择:")
    if choice == '1':
        show()
    elif choice == '2':
        search()
    elif choice == '3':
        insert()
    elif choice == '4':
        delete()
    elif choice == '0':
        with open(r'addressbook.json', 'w', encoding='utf-8') as f:
            json.dump(ab, f)
        print("通信录已保存到addressbook.json")
        break
    else:
        print("输入错误,请重新输入")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值