main.pyimport tools
while True:
    # 显示功能菜单
    tools.menu()
    
    action_str=input("请选择希望执行的操作:")
    print("您选择的操作是【%s】" % action_str)
    if action_str in ["1","2","3"]:
        if action_str=="1":
            # 新增名片
            tools.create()
        elif action_str=="2":
            # 显示所有名片
            tools.show()
        elif action_str=="3":
            # 搜索名片
            tools.search()
    elif action_str=="0":
        print("欢迎再次使用【名片管理系统】")
        break
    else:
        print("您输入的不正确,请重新选择")
tools.pylist1=[]
def menu():
    """打印菜单"""
    print("*"*50)
    print("欢迎使用【名片管理系统】v1.0")
    print()
    print("1.新增名片")
    print("2.显示全部")
    print("3.搜索名片")
    print()
    print("0.退出系统")
    print("*"*50)
def create():
    """新增名片"""
    print("-"*50)
    print("新增名片")
    
    name=input("请输入姓名:")
    phone=input("请输入电话:")
    qq=input("请输入QQ:")
    email=input("请输入邮箱:")
    dic={"name":name,
         "phone":phone,
         "qq":qq,
         "email":email}
    list1.append(dic)
    print(dic)
    print("添加%s的名片成功" % name)
def show():
    """显示所有名片"""
    print("-"*50)
    print("显示所有名片")
    if len(list1)==0:
        print("当前没有任何的名片记录,请使用新增功能添加名片!")
        return
    # 打印表头
    for i in ["姓名","电话","QQ","邮箱"]:
        print(i,end="\t\t")
    print()
    print("="*50)
    # 显示名片
    for i in list1:
        print("%s\t\t%s\t\t%s\t\t%s\t\t" % (i["name"],
                                            i["phone"],
                                            i["qq"],
                                            i["email"]))
def search():
    """搜索名片"""
    print("-"*50)
    print("搜索名片")
    find_name=input("请输入要搜索的姓名:")
    for i in list1:
        if i["name"]==find_name:
            print("姓名\t\t电话\t\tQQ\t\t邮箱")
            print("="*50)
            print("%s\t\t%s\t\t%s\t\t%s\t\t" % (i["name"],
                                                i["phone"],
                                                i["qq"],
                                                i["email"]))
            # 针对找到的名片记录执行修改和删除的操作
            deal_card(i)
            break
    else:
        print("抱歉,没有找到%s" % find_name)
def deal_card(find_dict):
    """处理查找到的名片"""
    action=input("请选择要执行的操作:[1] 修改 [2] 删除 [0] 返回上级菜单")
    if action=="1":
        find_dict["name"]=input_card_info(find_dict["name"],"姓名:")
        find_dict["phone"]=input_card_info(find_dict["phone"],"电话:")
        find_dict["qq"]=input_card_info(find_dict["qq"],"QQ:")
        find_dict["email"]=input_card_info(find_dict["email"],"邮箱:")
        print("修改名片成功!")
    elif action=="2":
        list1.remove(find_dict)
        print("删除名片成功!")
def input_card_info(dict_value,tip):
    """输入名片信息"""
    # 提示用户输入内容
    result=input(tip)
    # 针对用户的输入进行判断,如果用户输入内容,直接返回结果
    if len(result)>0:
        return result
    # 如果用户没有输入内容,返回字典中的原值
    else:
        return dict_value
执行效果:






