python3学习之 名片管理系统

# 工具文件 ,负责实现各种工具具体的功能(函数)
card_list = []  #名片列表 记录添加所有名片
card_info = {}   # 存储查询的名片信息
def show_menu():
    """显示菜单"""
    print("*"*30)
    print("欢迎使用【名片管理系统】v1.0 *")
    print("1.新建名片                   *")
    print("2.显示全部                   *")
    print("3.查询名片                   *")
    print("0.退出系统                   *")
    print("*"*30)

# 新建函数
def add_card():
    """新建名片"""
    name = input("请输入姓名")
    phone = input("请输入电话")
    weixin = input("请输入微信")
    address = input("请输入地址")
    # 为了方便查看 操作名片信息 将信息存储在字典中
    dicts = {
        "name":name,"phone":phone,"weixin":weixin,"address":address}
    # 将字典信息添加到全局列表中 在哪里都可以调用
    card_list.append(dicts)
    print("添加%s名片成功"%name)

# 显示全部函数
def show_all():
    if len(card_list) == 0:
       print("提示:没有任何名片信息")
       return
    else:
        print("姓名\t\t 电话\t\t 微信\t\t 地址")
        print("*"*50)
        for dicts in card_list:
            print("%s\t\t %s\t\t %s\t\t %s"
                  %(dicts["name"],dicts["phone"],dicts["weixin"],dicts["address"]))
            print("*"*50)

# 查询函数
def search_card():
    """查询功能"""
    show_name = input("请输入查询的姓名:")
    if len(card_list) > 0:
        #  遍历列表
        for dicts in card_list:
            # 对比 查询的姓名跟 列表中的名字是否一致
            if show_name == dicts["name"]:
                # 将查询到的名片记录到全局变量为了 以后的对名片修改删除操作
                global card_info
                card_info = dicts
                print("姓名\t\t 电话\t\t 微信\t\t 地址")
                print("*" * 50)
                print("%s\t\t %s\t\t %s\t\t %s"
                      % (dicts["name"], dicts["phone"], dicts["weixin"], dicts["address"]))
                print("*" * 50)
                deal_card()  # 调用 高级操作函数
                break
            else:
                print("提示:没有找到任何信息")
    else:
        print("提示:没有找到任何信息")

# 查询名片的高级操作
def deal_card():
    """处理名片"""
    while True:
        # 获取用户信息
        cmd = input("如需要对名片进行操作:\n1.修改\n2.删除\n0.返回上一级")
        # 进行判断
        if cmd == "1":
            print("修改列表操作:")
            update()
            break
        elif cmd == "2":
            print("删除列表操作:")
            delete()
            break
        elif cmd == "0":
            print("返回上一级")
            break
        else:
            print("输入错误,请重新输入")

# 修改 名片函数
def update():
    card_info["name"] = input("请输入修改的姓名:")
    card_info["phone"] = input("请输入修改的电话:")
    card_info["weixin"] = input("请输入修改的微信:")
    card_info["address"] = input("请输入修改的地址:")
    print("修改%s的名片成功"%card_info["name"])

# 删除功能
def delete():
    card_list.remove(card_info)  # 搜索到的字典 从全局的列表中删除

#  业务逻辑  入口文件
import card_tool    # 调用 模块  import 加 文件名
# 无限循环模式
while True:
    # 1显示 系统界面
    card_tool.show_menu()      # 调用函数 文件名.函数名
    # 获取用户的信息
    user = input("请输入执行的命令")
    # 根据用户的输入进行判断
    if user == "1":
        print("功能:新建名片")
        card_tool.add_card()
    elif user == "2":
        print("功能:显示全部")
        card_tool.show_all()
    elif user == "3":
        print("功能:查询名片")
        card_tool.search_card()
    elif user == "0":
        print("欢迎您下次光临【名片管理系统】v1.0")
        break
    else:
        print("输入有误,请重新输入")


猜你喜欢

转载自blog.csdn.net/weixin_42123737/article/details/80983618