Python编写【名片管理系统】

Python编写【名片管理系统】,第1张

Python编写【名片管理系统】

需求:

1、用户使用数字选择不同的功能;2、根据功能选择,执行对应的功能;3、需要记录用户的 姓名、电话、QQ、邮件;4、查询到指定名片 用户可以选择 修改、删除名片 *** 作; 实现步骤:

1、框架搭建2、不同功能的函数定义3、Linux下运行 文件命名:

在cards_tools.py文件中定义需要使用的函数;在cards_main.py文件中引用定义的函数;

cards_main.py   # 框架文件
cards_tools.py  # 定义函数文件

cards_main.py文件:

import cards_tools
while True:
    cards_tools.show_menu()
    action_str = input("请选择希望执行的 *** 作:")
    print("您选择的 *** 作是【%s】" % action_str)

    if action_str in ["1", "2", "3"]:
        pass
        if action_str == "1":
            # 新增名片
            cards_tools.new_card()
        elif action_str == "2":
            # 查看所有名片
            cards_tools.show_all()
        elif action_str == "3":
            # 搜索名片
            cards_tools.search_card()

    elif action_str == "0":
        print("欢迎再次使用【名片管理系统】")
        break
    else:
        print("选择 *** 作无效!请重新再次选择")

cards_tools.py文件:

card_list = []


def show_menu():
    """首页显示"""
    print('*' * 50)
    print('')
    print('欢迎使用【名片管理系统】V 1.0')
    print('1. 新增名片')
    print('2. 显示全部')
    print('3. 搜索名片')
    print('')
    print('0. 退出系统')
    print('*' * 50)


def new_card():
    """新增名片"""
    print('*' * 50)
    print('新增名片')
    name_str = input('请输入姓名:')
    phone_str = input('请输入电话:')
    qq_str = input('请输入QQ:')
    email_str = input('请输入邮箱:')

    card_dict = {'name': name_str,
                 'phone': phone_str,
                 'qq': qq_str,
                 'email': email_str}
    card_list.append(card_dict)

    print('%s 成功添加' % name_str)


def show_all():
    """显示所有名片"""
    print('*' * 50)
    print('显示所有名片')
    if len(card_list) == 0:
        print('没有任务名片,请进行添加后查询!')
        return
        # return 可以返回一个函数的执行结果
        # 如果 return 后面没有任何内容 表示会返回到调用函数的位置 并且不返回任何的结果
        # 下方代码不会被执行
    for name in ["姓名", "电话", "QQ", "邮箱"]:
        print(name, end="tt")
    print("")
    print('=' * 50)
    for card_dict in card_list:
        print("%stt%stt%stt%s" % (card_dict["name"],
                                        card_dict["phone"],
                                        card_dict["qq"],
                                        card_dict["email"]))


def search_card():
    """搜索函数"""
    print('*' * 50)
    print('搜索函数')
    find_name = input('请输入您要查询的名字:')

    for card_dict in card_list:
        if card_dict["name"] == find_name:
            print("姓名tt电话tt QQtt邮箱")
            print("=" * 50)
            print("%stt%stt%stt%s" % (card_dict["name"],
                                            card_dict["phone"],
                                            card_dict["qq"],
                                            card_dict["email"]))
            deal_card(card_dict)
            break
    else:
        print('没有找到 %s' % find_name)


def deal_card(find_name):
    """处理查找到的名片

    :param find_name: 查找到的名片
    :return:
    """
    # print(find_name)
    action_str = input('请输入要执行的 *** 作 '
                       '[1] 修改 [2]删除 [0]返回上级菜单')

    if action_str == "1":
        find_name["name"] = input_card_info(find_name["name"], '姓名[回车不修改]:')
        find_name["phone"] = input_card_info(find_name["phone"], '电话[回车不修改]:')
        find_name["qq"] = input_card_info(find_name["qq"], 'QQ[回车不修改]:')
        find_name["email"] = input_card_info(find_name["email"], '邮箱[回车不修改]:')
        print('修改名片成功!')
    elif action_str == "2":
        print('删除名片 %s 成功!' % find_name['name'])
        card_list.remove(find_name)


def input_card_info(find_value, tip_message):
    """输入名片信息

    :param find_value: 查找到字典中原有的值
    :param tip_message: 输入的提示文字
    :return: 如果用户输入内容 则返回内容 ,用户没有输入内容 则返回原有内容
    """

    result_str = input(tip_message)
    if len(result_str) > 0:
        return result_str
    else:
        return find_value
Linux下运行
[root@haimati ~]# yum -y install dos2unix
[root@haimati ~]# dos2unix cards_main.py 
[root@haimati ~]# dos2unix cards_tools.py 

[root@haimati ~]# head -1 cards_main.py  # 添加python3解释器路径(Shebang)
#!/usr/bin/python3
[root@haimati ~]# chmod +x cards_main.py
[root@haimati ~]# ./cards_main.py

或者 直接使用python3解释器执行脚本:

[root@haimati ~]# python3 cards_main.py

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5721162.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-18
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存