python实现通讯录管理系统

yizhihongxing

Python 实现通讯录管理系统

需求分析

我们需要实现一个通讯录管理系统,要求具有以下功能:

  1. 添加联系人
  2. 删除联系人
  3. 修改联系人信息
  4. 查询联系人信息
  5. 显示所有联系人
  6. 退出系统

技术选型

我们使用 Python 语言来实现这个通讯录管理系统。在 Python 中,我们可以使用列表来存储联系人信息,并使用循环和条件语句来实现不同的操作。

代码实现

添加联系人

当用户选择添加联系人时,我们需要获取用户输入的联系人信息,并将其添加到联系人列表中。以下是示例代码:

def add_contact(contacts):
    name = input("请输入联系人姓名:")
    phone = input("请输入联系人电话:")
    email = input("请输入联系人邮箱:")
    contact = {"name": name, "phone": phone, "email": email}
    contacts.append(contact)
    print("联系人添加成功!")

删除联系人

当用户选择删除联系人时,我们需要获取用户输入的联系人姓名,并查找并删除其在列表中的信息。以下是示例代码:

def delete_contact(contacts):
    name = input("请输入要删除的联系人姓名:")
    for contact in contacts:
        if contact["name"] == name:
            contacts.remove(contact)
            print("联系人删除成功!")
            return
    print("没有找到该联系人!")

修改联系人信息

当用户选择修改联系人信息时,我们需要获取用户输入的联系人姓名,并查找并修改其在列表中的信息。以下是示例代码:

def modify_contact(contacts):
    name = input("请输入要修改的联系人姓名:")
    for contact in contacts:
        if contact["name"] == name:
            phone = input("请输入联系人电话(回车不修改):")
            email = input("请输入联系人邮箱(回车不修改):")
            if phone:
                contact["phone"] = phone
            if email:
                contact["email"] = email
            print("联系人修改成功!")
            return
    print("没有找到该联系人!")

查询联系人信息

当用户选择查询联系人信息时,我们需要获取用户输入的联系人姓名,并查找其在列表中的信息。以下是示例代码:

def query_contact(contacts):
    name = input("请输入要查询的联系人姓名:")
    for contact in contacts:
        if contact["name"] == name:
            print("联系人信息如下:")
            print("姓名:", contact["name"])
            print("电话:", contact["phone"])
            print("邮箱:", contact["email"])
            return
    print("没有找到该联系人!")

显示所有联系人

当用户选择显示所有联系人时,我们需要遍历全部联系人列表,并输出其信息。以下是示例代码:

def show_all_contacts(contacts):
    if not contacts:
        print("联系人列表为空!")
    else:
        print("联系人信息如下:")
        for contact in contacts:
            print("-" * 40)
            print("姓名:", contact["name"])
            print("电话:", contact["phone"])
            print("邮箱:", contact["email"])

管理系统主函数

在主函数中,我们可以使用一个无限循环来不断显示操作菜单,并根据用户的选择来执行相应的操作,如下所示:

def main():
    contacts = []
    while True:
        print("=" * 40)
        print("通讯录管理系统")
        print("1. 添加联系人")
        print("2. 删除联系人")
        print("3. 修改联系人信息")
        print("4. 查询联系人信息")
        print("5. 显示所有联系人")
        print("6. 退出系统")
        print("=" * 40)

        choice = input("请输入您的选择(数字):")
        if choice == "1":
            add_contact(contacts)
        elif choice == "2":
            delete_contact(contacts)
        elif choice == "3":
            modify_contact(contacts)
        elif choice == "4":
            query_contact(contacts)
        elif choice == "5":
            show_all_contacts(contacts)
        elif choice == "6":
            print("谢谢使用!")
            break
        else:
            print("您的输入有误,请重新输入!")

示例说明

示例一

以下是一个操作演示:

========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):1
请输入联系人姓名:张三
请输入联系人电话:13800000000
请输入联系人邮箱:zhangsan@example.com
联系人添加成功!
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):5
联系人信息如下:
----------------------------------------
姓名: 张三
电话: 13800000000
邮箱: zhangsan@example.com
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):2
请输入要删除的联系人姓名:张三
联系人删除成功!
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):5
联系人列表为空!
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):6
谢谢使用!

在这个演示中,我们先选择了添加一个联系人,然后选择了显示所有联系人,可以看到刚刚添加的联系人已经成功显示了出来。接着,我们选择了删除联系人,并输入要删除的联系人姓名,系统返回删除成功的消息。最后,我们选择了再次显示所有联系人,可以看到联系人列表已经为空。

示例二

以下是一个较为复杂的操作演示:

========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):1
请输入联系人姓名:张三
请输入联系人电话:13800000000
请输入联系人邮箱:zhangsan@example.com
联系人添加成功!
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):1
请输入联系人姓名:李四
请输入联系人电话:13900000000
请输入联系人邮箱:lisi@example.com
联系人添加成功!
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):5
联系人信息如下:
----------------------------------------
姓名: 张三
电话: 13800000000
邮箱: zhangsan@example.com
----------------------------------------
姓名: 李四
电话: 13900000000
邮箱: lisi@example.com
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):3
请输入要修改的联系人姓名:李四
请输入联系人电话(回车不修改):13999999999
请输入联系人邮箱(回车不修改):
联系人修改成功!
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):5
联系人信息如下:
----------------------------------------
姓名: 张三
电话: 13800000000
邮箱: zhangsan@example.com
----------------------------------------
姓名: 李四
电话: 13999999999
邮箱: lisi@example.com
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):4
请输入要查询的联系人姓名:张三
联系人信息如下:
姓名: 张三
电话: 13800000000
邮箱: zhangsan@example.com
========================================
通讯录管理系统
1. 添加联系人
2. 删除联系人
3. 修改联系人信息
4. 查询联系人信息
5. 显示所有联系人
6. 退出系统
========================================
请输入您的选择(数字):6
谢谢使用!

在这个演示中,我们先添加了两个联系人,然后选择了显示所有联系人,可以看到两个联系人的信息都被成功地显示了出来。接着,我们选择了修改联系人信息,输入要修改的联系人姓名并修改其中一个联系人的电话,系统提示联系人修改成功。之后,我们选择了查询联系人信息,输入要查询的联系人姓名,并成功看到该联系人的信息。最后,我们选择了退出系统,系统成功退出。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python实现通讯录管理系统 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • python NumPy ndarray二维数组 按照行列求平均实例

    下面是关于“python NumPy ndarray二维数组按照行列求平均实例”的完整攻略: 一、需求说明 我们需要使用Python中NumPy库中的ndarray二维数组,对其按照行或者列进行平均,计算平均值后返回一个一维数组。 二、相关知识点 1. NumPy库 NumPy是Python语言的一个扩展程序库,支持大量针对数组的操作及其相关领域的数学函数。…

    python 2023年6月5日
    00
  • 对python3 Serial 串口助手的接收读取数据方法详解

    对 python3 serial 串口助手的接收读取数据方法详解 1. 安装 serial 库 在 Python3 中,我们可以使用 serial 库来读取和发送串口数据。如果你没有安装 serial 库,可以使用如下命令进行安装: pip install pyserial 2. 连接串口 在使用串口助手读取串口数据之前,需要先将串口连接到计算机上。连接方法…

    python 2023年6月5日
    00
  • 详解Python Counter对象的概率计算

    Python中的Counter对象是用于计数的数据结构,它可以轻松地对一个可迭代对象中的元素进行计数。Counter对象计数后会以字典的形式返回结果,其中键是元素,值是元素出现的次数。在计算概率的过程中,Counter对象可以很好地辅助我们进行统计。 下面是使用Python Counter对象计算概率的步骤: 对样本空间进行计数,得到一个Counter对象(…

    python-answer 2023年3月25日
    00
  • python制作最美应用的爬虫

    Python制作最美应用的爬虫攻略 Python作为一门优秀的编程语言,可以用来制作强大、高效、优美的爬虫。下面是一个基本的爬虫制作流程。 1. 设计爬虫 在开始开发爬虫程序之前,需要明确爬取什么数据、从哪里爬取以及如何爬取。 定义任务 首先,我们需要定义任务,即我们想要抓取哪些数据以及抓取数据的来源。例如,我们想要抓取某一个网站上的文章,那么我们需要明确想…

    python 2023年5月14日
    00
  • 抓取网站时缺少 HTML 元素。 Python

    【问题标题】:Missing HTML Elements when scraping website. Python抓取网站时缺少 HTML 元素。 Python 【发布时间】:2023-04-01 00:21:02 【问题描述】: 我正在尝试使用 bs4 和 Selenium 从网站中提取 HREF。但是,当我使用 Beautiful Soup 解析 HT…

    Python开发 2023年4月8日
    00
  • Python异常处理与反射相关问题总结

    Python异常处理与反射相关问题总结 在Python编程中,异常处理和反射是非常重要的概念。异常处理可以帮助我们处理程序运行时出现的错误,而反射则可以帮助我们动态地获取和调用对象的属性和方法。本文将详细讲解Python异常处理与反射相关问题总结,包括异常处理的基本语法、常见异常类型、异常处理的最佳实践、反射的基本语法、反射的应用场景等。在过程中,提供两个示…

    python 2023年5月13日
    00
  • python3爬取torrent种子链接实例

    Python3爬取Torrent种子链接实例 Torrent是一种常见的文件共享协议,通过种子文件来描述文件的元数据和下载链接。本文将介绍如何使用Python3爬取Torrent种子链接的方法,并提供两个示例。 爬取Torrent种子链接的方法 爬取Torrent种子链接的方法主要有两种: 使用Python的requests模块和正则表达式来解析HTML页面…

    python 2023年5月15日
    00
  • 使用C++调用Python代码的方法步骤

    当我们需要使用C++调用Python代码时,可以使用Python提供的一个称为Python C API的接口。下面是使用该接口的步骤: 安装Python并添加Python C API头文件 在开始之前需要先安装Python,并在C++中引用Python C API的头文件。Python C API的头文件通常位于Python的安装目录下的include文件夹…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部