【大学生Python】用字典和列表实现手机通讯录

person_info = []
while True:
    print("=" * 20)
    print('欢迎使用通讯录:')
    print("1.添加联系人")
    print("2.查看通讯录")
    print("3.删除联系人")
    print("4.修改联系人")
    print("5.查找联系人")
    print("6.退出")
    print("=" * 20)
    per_dict = {}
    fun_num = input('请输入功能序号:')
    if fun_num == '1':
        per_name = input('请输入联系人的姓名:')
        phone_num = input('请输入联系人的手机号:')
        per_email = input('请输入联系人的邮箱:')
        per_address = input('请输入联系人的地址:')
        # 判断输入的是否为空
        if per_name.strip() == '' or phone_num.strip() == '' or per_email.strip() == '' or per_address.strip() == '':
            print('请输入正确信息')
            continue
        else:
            per_dict.update({'姓名': per_name,
                             '手机号': phone_num,
                             '电子邮箱': per_email,
                             '联系地址': per_address})
            person_info.append(per_dict)  # 保存到列表中
            print('保存成功')
    elif fun_num == '2':
        if len(person_info) == 0:
            print('通讯录无信息')
        for i in person_info:
            print('--*' * 6)
            for title, info in i.items():
                print(title + ':' + info)
            print('--*' * 6)
        print(person_info)
    elif fun_num == '3':  # 删除
        if len(person_info) != 0:
            del_name = input('请输入要删除的联系人姓名:')
            flag=0
            for i in person_info:
                if del_name in i.values():
                    person_info.remove(i)
                    flag=1
                    print('删除成功')
                    break
            if flag==0:
                print('该联系人不在通讯录中')
        else:
            print('通讯录无信息')
    elif fun_num == '4':  # 修改
        if len(person_info) != 0:
            modi_info = input('请输入要修改的联系人姓名:')
            flag = 0
            for i in person_info:
                if modi_info in i.values():
                    flag=1
                    for title, info in i.items():
                        print(title + ':' + info)
                    modi_name = input('请输入新的姓名:')
                    modi_phone = input('请输入新的手机号:')
                    modi_email = input('请输入新的邮箱:')
                    modi_address = input('请输入新的地址:')
                    i.update({'姓名': modi_name,
                              '手机号': modi_phone,
                              '电子邮箱': modi_email,
                              '联系地址': modi_address})
                    print(person_info)
                    break
            if flag==0:
                print('该联系人不在通讯录中')

        else:
            print('通讯录无信息')
    elif fun_num == '5':  # 查找
        if len(person_info) != 0:
            query_name = input('请输入要查找的联系人姓名:')
            flag = 0
            for i in person_info:
               if query_name in i.values():
                    flag = 1
                    for title, info in i.items():
                        print(title + ':' + info)
                    break
            if flag==0:
                print('该联系人不在通讯录中')
        else:
            print('通讯录无信息')
    elif fun_num == '6':  # 退出
        break

  • 6
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值