python实现简单的名片管理系统

Python实现简单的名片管理系统

介绍

本文将介绍如何使用Python实现一个简单的名片管理系统。该系统具有以下功能:

  1. 添加一个新的名片
  2. 显示名片列表
  3. 按名字查找名片
  4. 按电话号码查找名片
  5. 删除名片
  6. 退出系统

实现步骤

  1. 创建一个空的名片列表
  2. 显示系统菜单,让用户选择需要执行的操作
  3. 根据用户的选择执行相应的操作
  4. 当用户选择退出系统时,保存名片列表并退出系统

具体实现代码请见以下示例:

示例一:实现添加和显示功能

cards = [] # 存放名片的列表

# 添加名片到名片列表
def add_card():
    name = input("请输入姓名:")
    phone = input("请输入电话号码:")
    card = {"name": name, "phone": phone} # 创建一个名片
    cards.append(card) # 添加新名片到卡片列表中
    print("已成功添加名片:{}".format(name))

# 显示名片列表
def show_cards():
    print("========名片列表========")
    for card in cards:
        print("姓名:{},电话:{}".format(card["name"], card["phone"]))

# 显示系统菜单
def show_menu():
    print("欢迎使用名片管理系统!")
    print("1. 添加名片")
    print("2. 显示名片列表")
    print("3. 按姓名查找名片")
    print("4. 按电话号码查找名片")
    print("5. 删除名片")
    print("6. 退出系统")

# 主函数
def main():
    while True:
        show_menu() # 显示系统菜单
        option = input("请选择要进行的操作:")

        if option == "1":
            add_card() # 添加名片到名片列表
        elif option == "2":
            show_cards() # 显示名片列表
        elif option == "3":
            pass
        elif option == "4":
            pass
        elif option == "5":
            pass
        elif option == "6":
            break # 退出系统

if __name__ == "__main__":
    main()

示例二:实现按姓名查找和删除功能

cards = [] # 存放名片的列表

# 添加名片到名片列表
def add_card():
    name = input("请输入姓名:")
    phone = input("请输入电话号码:")
    card = {"name": name, "phone": phone} # 创建一个名片
    cards.append(card) # 添加新名片到卡片列表中
    print("已成功添加名片:{}".format(name))

# 显示名片列表
def show_cards():
    print("========名片列表========")
    for card in cards:
        print("姓名:{},电话:{}".format(card["name"], card["phone"]))

# 按姓名查找名片
def find_card_by_name():
    name = input("请输入要查找的姓名:")
    for card in cards:
        if card["name"] == name:
            print("查找结果:姓名:{},电话:{}".format(card["name"], card["phone"]))
            break
    else:
        print("未找到姓名为{}的名片".format(name))

# 按编号删除名片
def del_card_by_index(index):
    del cards[index]
    print("已成功删除名片")

# 按姓名删除名片
def del_card_by_name():
    name = input("请输入要删除的姓名:")
    for index, card in enumerate(cards):
        if card["name"] == name:
            del_card_by_index(index)
            break
    else:
        print("未找到姓名为{}的名片".format(name))

# 显示系统菜单
def show_menu():
    print("欢迎使用名片管理系统!")
    print("1. 添加名片")
    print("2. 显示名片列表")
    print("3. 按姓名查找名片")
    print("4. 按电话号码查找名片")
    print("5. 删除名片")
    print("6. 退出系统")

# 主函数
def main():
    while True:
        show_menu() # 显示系统菜单
        option = input("请选择要进行的操作:")

        if option == "1":
            add_card() # 添加名片到名片列表
        elif option == "2":
            show_cards() # 显示名片列表
        elif option == "3":
            find_card_by_name() # 按姓名查找名片
        elif option == "4":
            pass
        elif option == "5":
            del_card_by_name() # 按姓名删除名片
        elif option == "6":
            break # 退出系统

if __name__ == "__main__":
    main()

总结

通过这个示例,我们可以发现,Python实现一个简单的名片管理系统并不难,只需要通过列表和字典等数据结构来存储和操作名片数据即可。如果需要扩展功能,只要在程序中添加相应的代码即可。

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

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

相关文章

  • C#实现自动生成电子印章

    下面是详细的攻略: C#实现自动生成电子印章 前言 随着电子化程度的提升,越来越多的文件需要电子印章进行认证。本文将介绍使用C#编写程序,实现自动生成电子印章的过程。 准备工作 在开始之前,需要做好以下准备工作: 安装Visual Studio或其他C#开发环境 熟悉C#编程语言 安装iTextSharp和BouncyCastle等程序包 实现过程 以下是C…

    python 2023年6月3日
    00
  • 计算一个二维NumPy数组中所有列的总和

    计算一个二维NumPy数组中所有列的总和的完整攻略如下: 导入NumPy模块:在使用NumPy计算数组的列总和之前,需要先导入NumPy模块。可以使用以下语句导入NumPy模块: import numpy as np 创建二维NumPy数组:接下来需要创建一个二维NumPy数组。可以使用以下语句创建一个二维数组: arr = np.array([[1, 2,…

    python-answer 2023年3月25日
    00
  • 详解python 字符串和日期之间转换 StringAndDate

    详解Python字符串和日期之间转换:StringAndDate 在Python中字符串和日期之间的转换非常方便,这可以通过内置模块datetime和time来实现。 字符串转日期 当我们要将字符串转换为日期时,我们可以使用strptime()函数来完成。 其中strptime()函数的用法为: datetime.strptime(date_string, …

    python 2023年6月2日
    00
  • Python/Mako:通过 Ajax 调用加载到主模板时,脚本标签未从子模板中显示

    【问题标题】:Python/Mako: Script Tag not showing up from Sub Template when Loaded into Main Template via Ajax CallPython/Mako:通过 Ajax 调用加载到主模板时,脚本标签未从子模板中显示 【发布时间】:2023-04-06 05:43:02 【问…

    Python开发 2023年4月7日
    00
  • 用Python爬取各大高校并可视化帮弟弟选大学,弟弟直呼牛X

    首先,需要明确的是,爬取各大高校的方法一般是通过网络爬虫来实现的。Python有多个优秀的网络爬虫框架,如Scrapy和BeautifulSoup等。在本攻略中,我们将会使用BeautifulSoup来实现爬取各大高校的操作,并使用Matplotlib将爬取结果进行可视化展示。 步骤一:安装必要的库 首先,需要安装必要的Python库,包括requests、…

    python 2023年5月14日
    00
  • Python3使用xlrd、xlwt处理Excel方法数据

    下面来详细讲解一下“Python3使用xlrd、xlwt处理Excel方法数据”的完整实例教程。这里我们首先介绍一下xlrd和xlwt两个库。 1. xlrd和xlwt库介绍 xlrd是一个用来读取Excel文件的Python库,能够支持.xls格式的Excel文件,但是不支持.xlsx格式的文件。xlwt则是一个用来写Excel文件的Python库,支持.…

    python 2023年5月13日
    00
  • 浅析python3中的os.path.dirname(__file__)的使用

    当我们在Python中编写脚本时,我们经常需要对文件进行操作。操作文件时,我们需要知道文件的完整路径或相对路径。在Python中,我们可以使用os.path模块来对路径进行操作。 在Python3中,os.path.dirname(file)是一个常用的表达式,它返回当前脚本文件的目录路径。 下面是一个简单的示例,演示了os.path.dirname(fil…

    python 2023年6月2日
    00
  • 【K哥爬虫普法】12亿公民信息泄露,仅判3年,个人信息是否为爬虫“禁区”?

    我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K 哥特设了“K哥爬虫普法”专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识,知晓如何合法合规利用爬虫技术,警钟长鸣,做一个守法、护法、有原则的技术人员。 案情介绍 出生于1983年12月的黎某是湖南省浏阳市人,从2012年开始做淘宝客生意,即通过做淘宝推广…

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