python实现名片管理系统项目

下面将为大家讲解如何实现“python实现名片管理系统项目”,具体步骤如下:

步骤一:创建项目和目录结构

在终端中,使用mkdir命令创建一个名为cards的文件夹,进入该文件夹,使用touch命令创建两个文件:README.mdcard_manager.py

mkdir cards
cd cards
touch README.md card_manager.py

README.md文件用于说明该项目的用途和使用方法,而card_manager.py文件则是我们实际编写代码的地方。

步骤二:编写名片管理系统代码

下面是名片管理系统的基本功能:

  1. 新增名片
  2. 修改名片
  3. 删除名片
  4. 查询名片
  5. 显示所有名片
  6. 退出系统

以下是我们实现这些功能的完整代码,详细说明见注释:

class CardManager:
    def __init__(self):
        # 创建名片信息字典数据
        self.cards = []

    def run(self):
        # 名片管理系统入口函数
        print('=' * 30)
        print('欢迎使用名片管理系统')
        print('1. 新增名片')
        print('2. 修改名片')
        print('3. 删除名片')
        print('4. 查询名片')
        print('5. 显示所有名片')
        print('6. 退出系统')
        print('=' * 30)

        while True:
            # 等待用户输入指令
            command = input('请输入指令:')

            if command == '1':
                # 新增名片
                self.add_card()
            elif command == '2':
                # 修改名片
                self.modify_card()
            elif command == '3':
                # 删除名片
                self.delete_card()
            elif command == '4':
                # 查询名片
                self.search_card()
            elif command == '5':
                # 显示所有名片
                self.show_all_cards()
            elif command == '6':
                # 退出系统
                break
            else:
                # 非法指令
                print('非法指令,请重新输入!')

    def add_card(self):
        # 新增名片
        print('=' * 30)
        print('新增名片')

        # 获取用户输入的信息
        name = input('请输入姓名:')
        phone = input('请输入电话号码:')
        email = input('请输入电子邮件:')

        # 将信息添加到字典中
        card = {'name': name, 'phone': phone, 'email': email}
        self.cards.append(card)

        print('添加成功!')
        print('=' * 30)

    def delete_card(self):
        # 删除名片
        print('=' * 30)
        print('删除名片')

        name = input('请输入要删除的名片姓名:')

        for card in self.cards:
            if card['name'] == name:
                self.cards.remove(card)
                print('删除成功!')
                break
        else:
            print('未找到该名片,请重新输入!')

        print('=' * 30)

    def modify_card(self):
        # 修改名片
        print('=' * 30)
        print('修改名片')

        name = input('请输入要修改的名片姓名:')

        for card in self.cards:
            if card['name'] == name:
                # 找到名片后,修改其信息
                card['phone'] = input('请输入电话号码:')
                card['email'] = input('请输入电子邮件:')
                print('修改成功!')
                break
        else:
            print('未找到该名片,请重新输入!')

        print('=' * 30)

    def search_card(self):
        # 查询名片
        print('=' * 30)
        print('查询名片')

        name = input('请输入要查询的名片姓名:')

        for card in self.cards:
            if card['name'] == name:
                # 输出名片信息
                print('姓名:{}'.format(card['name']))
                print('电话号码:{}'.format(card['phone']))
                print('电子邮件:{}'.format(card['email']))
                break
        else:
            print('未找到该名片,请重新输入!')

        print('=' * 30)

    def show_all_cards(self):
        # 显示所有名片
        print('=' * 30)
        print('所有名片')

        for card in self.cards:
            # 输出名片信息
            print('姓名:{}'.format(card['name']))
            print('电话号码:{}'.format(card['phone']))
            print('电子邮件:{}'.format(card['email']))

        print('=' * 30)

步骤三:完善名片管理系统代码,并测试

上述代码实现了名片管理系统的基本功能,但还有一些需要完善的地方,比如可以使用文件存储名片信息,可以添加名片查询功能的高级搜索等等,读者可以自行完善。

最后,我们可以在终端中运行该程序,测试其功能是否正常:

python card_manager.py

示例运行结果:

==============================
欢迎使用名片管理系统
1. 新增名片
2. 修改名片
3. 删除名片
4. 查询名片
5. 显示所有名片
6. 退出系统
==============================
请输入指令:1
==============================
新增名片
请输入姓名:张三
请输入电话号码:13888888888
请输入电子邮件:zhangsan@example.com
添加成功!
==============================
请输入指令:5
==============================
所有名片
姓名:张三
电话号码:13888888888
电子邮件:zhangsan@example.com
==============================
请输入指令:6

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

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

相关文章

  • 详解python如何调用C/C++底层库与互相传值

    让我详细解释一下如何在Python中调用C/C++底层库并传递值。这个过程通常被称为扩展Python。在本攻略中,我将使用Python C API和SWIG包来演示如何将C/C++库集成到Python应用程序中。 准备工作 在开始之前,我们需要安装以下软件: Python开发环境(Python3推荐) C/C++编译器 SWIG软件包 另外,你还需要了解一些…

    python 2023年5月18日
    00
  • python3的url编码和解码,自定义gbk、utf-8的例子

    下面是详细讲解python3的url编码和解码,以及自定义gbk、utf-8的例子: 什么是URL编码和解码 URL编码(percent-encoding)是一种编码格式,将URL中的特殊字符转换成特定的格式,以便于进行传输。URL解码则是将编码后的URL字符串恢复为原始的URL字符串。 在URL中,有些字符具有特殊的含义,如“/”、“?”、“#”等等,如果…

    python 2023年5月20日
    00
  • 详解Django的MVT设计模式

    详解Django的MVT设计模式 Django是一个基于Python的Web框架,采用了MVT(Model-View-Template)设计模式。MVT是一种基于MVC(Model-View-Controller)设计模式的变体,它将控制器(Controller)分解为模板(Template)和视图(View),以更好地实现业务逻辑和数据处理。以下是Djan…

    python 2023年5月14日
    00
  • python实现自动化群控的步骤

    下面我会详细讲解“python实现自动化群控的步骤”的完整攻略。实现自动化群控通常需要以下步骤: 1. 准备工作 安装Python和需要的第三方库 安装模拟键盘鼠标操作的库pyautogui(处理网页时可能还需要selenium或beautiful soup等库) 确认自己对要控制的群、群成员、内容等信息的了解,可以借助QQ机器人等工具进行测试 2. 登录Q…

    python 2023年5月19日
    00
  • python 多线程对post请求服务器测试并发的方法

    在Python中,我们可以使用多线程来测试POST请求服务器的并发性能。多线程可以同时发送多个POST请求,以便模拟多个用户同时访问服务器的情况。本文将通过实例讲解如何使用Python多线程测试POST请求服务器的并发性能,包括使用threading库和两个示例。 使用threading库测试POST请求服务器的并发性能 我们可以使用threading库来测…

    python 2023年5月15日
    00
  • python opencv将表格图片按照表格框线分割和识别

    实现分割和识别表格的方法一般可以分为以下几个步骤: 读取图片 将图片转换为灰度图像 进行二值化处理 寻找表格轮廓 进行表格切割 对每个表格区域进行识别 下面将介绍具体的实现方式和示例。 1. 读取图片 可以使用Python的OpenCV库中的imread()函数读取图片,代码如下: import cv2 img = cv2.imread(‘image.png…

    python 2023年5月18日
    00
  • Python中的MongoDB基本操作:连接、查询实例

    Python中的MongoDB基本操作:连接、查询实例 连接MongoDB 在Python中使用MongoDB需要先安装PyMongo库。安装方法如下: pip install pymongo 安装完毕后,使用以下代码连接MongoDB: import pymongo # 连接MongoDB client = pymongo.MongoClient(host…

    python 2023年5月14日
    00
  • Python 类的魔法属性用法实例分析

    Python 类的魔法属性用法实例分析。 什么是魔法属性 在Python中,我们经常会看到以双下划线开头和结尾的属性名,例如__init__、__str__等,这些属性也被称为魔法属性(Magic Method),因为它们有很强大的魔力,可以实现许多特殊的行为。 魔法属性的作用是用于定义类的特殊行为,我们可以在自定义类中重写这些属性,从而实现自定义的特殊行为…

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