如何使用Python编写一个简单的通讯录程序

在日常生活中,管理联系人信息是一项基本需求。通过编程,我们可以实现一个简单的通讯录应用,帮助我们高效地存储、查找、修改和删除联系人信息。下面,就以一段Python代码为例,一步步教你如何构建一个基本的通讯录程序。

程序功能概览

我们的通讯录程序将具备以下核心功能:

  • 添加联系人:允许用户输入新联系人的姓名和电话号码,加入通讯录。
  • 删除联系人:根据用户提供的姓名,从通讯录中移除相应的联系人信息。
  • 查询联系人:输入姓名,查询并显示该联系人的电话号码。
  • 修改联系人信息:选择需要修改的联系人,更新其电话号码。
  • 退出程序:提供选项让用户安全退出通讯录应用。
代码解析与教学

首先,我们来看一下程序的完整代码框架:

# 定义通讯录字典,存放联系人姓名与电话号码
addressbook = {'张三': 18125431254, '李四': 17195478562}

def add_card(addressbook):
    # 添加联系人逻辑...
    
def delete_card(addressbook):
    # 删除联系人逻辑...
    
def find_card(addressbook):
    # 查询联系人逻辑...
    
def update_card(addressbook):
    # 更新联系人信息逻辑...

def directory(addressbook):
    # 主菜单逻辑...
    
# 打印欢迎信息,启动通讯录程序
print("通讯录程序欢迎界面...")
directory(addressbook)

接下来,我们逐个解析每个功能的实现细节:

1. 添加联系人(add_card)
def add_card(addressbook):
    name = input('请输入新的联系人姓名:')
    while True:
        phone_num = input('请输入新的联系人的号码:')
        if not phone_num.isdigit() or len(phone_num) != 11:
            print('号码录入错误!请确保电话号码为11位数字。')
            continue
        else:
            addressbook[name] = phone_num
            print(f'{name} 添加成功!')
            break

这部分代码首先接收用户输入的姓名和电话号码,然后检查电话号码是否为11位数字,确保数据的准确性,最后将新联系人添加到通讯录。

2. 删除联系人(delete_card)
def delete_card(addressbook):
    name = input('请输入需要删除的联系人姓名:')
    if name in addressbook:
        del addressbook[name]
        print('删除成功!')
    else:
        print('该联系人不存在!')

用户输入要删除的联系人姓名,程序检查该姓名是否存在,如果存在则从通讯录中删除。

3. 查询联系人(find_card)
def find_card(addressbook):
    name = input('请输入需要查询的联系人姓名:')
    if name in addressbook:
        print(f'{name} 的电话号码是:{addressbook[name]}')
    else:
        print('该联系人不存在!')

输入姓名,程序查询并显示该联系人的电话号码。

4. 修改联系人信息(update_card)
def update_card(addressbook):
    name = input('请输入需要修改的联系人姓名:')
    if name in addressbook:
        phone_num = input('请输入新的电话号码:')
        addressbook[name] = phone_num
        print('信息更新成功!')
    else:
        print('该联系人不存在!')

允许用户选择需要修改的联系人,并输入新的电话号码进行更新。

5. 程序主界面(directory)
def directory(addressbook):
    while True:
        print("\n请选择操作:\n1. 添加联系人\n2. 删除联系人\n3. 查询联系人\n4. 修改联系人信息\n5. 退出通讯录")
        choice = input('请输入操作编号:')
        if choice == '1':
            add_card(addressbook)
        elif choice == '2':
            delete_card(addressbook)
        elif choice == '3':
            find_card(addressbook)
        elif choice == '4':
            update_card(addressbook)
        elif choice == '5':
            print("|---感谢使用通讯录程序,再见!---|")
            break
        else:
            print('无效的输入,请重新选择!')

展示主菜单,根据用户的选择调用相应的功能函数,或退出程序。

完整代码

def add_card(addressbook):
    """添加联系人"""
    name = input('请输入新的联系人姓名:')
    while True:
        phone_num = input('请输入新的联系人的号码:')
        if not phone_num.isdigit() or len(phone_num) != 11:
            print('号码录入错误!请输入正确的11位数字电话号码。')
            continue
        else:
            addressbook[name] = phone_num
            print('联系人添加成功!')
            break

def delete_card(addressbook):
    """删除联系人"""
    name = input('请输入需要删除的联系人姓名:')
    if name in addressbook:
        del addressbook[name]
        print('删除成功!')
    else:
        print('该联系人不存在!')

def find_card(addressbook):
    """查询联系人"""
    name = input('请输入需要查询的联系人姓名:')
    if name in addressbook:
        print(f'{name} 的电话号码是:{addressbook[name]}')
    else:
        print('该联系人不存在!')

def update_card(addressbook):
    """修改联系人信息"""
    name = input('请输入需要修改的联系人姓名:')
    if name in addressbook:
        phone_num = input('请输入新的电话号码:')
        addressbook[name] = phone_num
        print('信息更新成功!')
    else:
        print('该联系人不存在!')

def directory(addressbook):
    """通讯录主界面"""
    print("""
    |---欢迎使用通讯录程序---|
    |---1. 添加新的联系人---|
    |---2. 删除已有联系人---|
    |---3. 查询联系人信息---|
    |---4. 修改联系人信息---|
    |---5. 退出通讯录程序---|
    """)
    while True:
        choice = input('请选择您需要的功能(输入数字):')
        if choice.isdigit():
            choice = int(choice)
            if choice == 5:
                print('|---感谢使用通讯录程序,再见!---|')
                break
            elif choice == 1:
                add_card(addressbook)
            elif choice == 2:
                delete_card(addressbook)
            elif choice == 3:
                find_card(addressbook)
            elif choice == 4:
                update_card(addressbook)
            else:
                print('输入错误,请重新选择!')
        else:
            print('您的输入不是数字,请重新输入!')

# 初始化通讯录字典
Addressbook = {}

# 启动通讯录程序
directory(Addressbook)
  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面是一个简单通讯录程序的示例代码: ```python contacts = {} # 创建一个空字典,用于存储联系人信息 def add_contact(name, phone, email): """添加联系人""" contacts[name] = {'phone': phone, 'email': email} print(f'{name}已添加到通讯录中。') def search_contact(name): """查找联系人""" if name in contacts: contact_info = contacts[name] print(f'姓名:{name}\n电话:{contact_info["phone"]}\n邮箱:{contact_info["email"]}') else: print(f'{name}不在通讯录中。') def delete_contact(name): """删除联系人""" if name in contacts: del contacts[name] print(f'{name}已从通讯录中删除。') else: print(f'{name}不在通讯录中。') while True: print('请选择操作:') print('1.添加联系人') print('2.查找联系人') print('3.删除联系人') print('4.退出程序') choice = input('请输入序号:') if choice == '1': name = input('请输入姓名:') phone = input('请输入电话:') email = input('请输入邮箱:') add_contact(name, phone, email) elif choice == '2': name = input('请输入要查找的姓名:') search_contact(name) elif choice == '3': name = input('请输入要删除的姓名:') delete_contact(name) elif choice == '4': print('程序已退出。') break else: print('输入有误,请重新输入。') ``` 这个程序使用一个字典来存储联系人的信息,每个联系人的信息以字典的形式存储在contacts字典中。程序提供了添加、查找、删除联系人的功能,用户可以根据提示输入相应的信息来完成操作。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值