Airuio 2020-05-19
通过Python开发一个基于控制台的名片管理系统,具体看下图以及相关代码。
cards_main.py文件中提供程序的入口
import cards_toolslx while True: # TODO 显示功能菜单 cards_toolslx.show_menu() GongNeng = input("请选择您要使用的功能:") print("您选择的操作是:[%s]" % GongNeng) if GongNeng in ["1","2","3"]: #新增名片 if GongNeng == "1": cards_toolslx.ChaRu() #显示名片 elif GongNeng == "2": cards_toolslx.XianShi() #查询名片 else: cards_toolslx.ChaXun() elif GongNeng == "0": print("-" * 50) print("欢迎再次使用名片管理系统") break else: print("-" * 50) print("输入有误,请重新输入")
cards_toolslx.py文件提供名片系统中所用的各种函数
"""记录所有名片字典的列表""" card_list = [] def show_menu(): """显示菜单""" print("*" * 50) print("欢迎使用名片管理系统") print("1-新增名片") print("2-显示全部") print("3-搜索名片") print("0-退出系统") print("*" * 50) def ChaRu(): """ 新增名片 """ print("-" * 50) print("新增名片") #1.提示用户输入名片的详细信息 name_str = input("请输入姓名:") phone = input("请输入电话:") qq_str = input("请输入qq:") emall_str = input("请输入邮箱:") #2.当用户输入完成后建立用户名片字典 card_dict = {"name":name_str, "phone":phone, "qq":qq_str, "emall":emall_str} card_list.append(card_dict) print(card_list) #3.名片字典添加到列表中 print("%s名片添加成功!" % name_str) def XianShi(): """显示全部""" print("-" * 50) print("显示全部") #打印表头 for name in ["姓名","电话","qq","邮箱"]: print(name,end="\t\t\t\t") print("") print("="*50) for card_dict in card_list: print("%s\t\t%s\t\t%s2\t\t%s" % (card_dict["name"], card_dict["phone"], card_dict["qq"], card_dict["emall"] )) def ChaXun(): """搜索名片""" print("-" * 50) print("搜索名片") SouSuo = input("请输入要搜索的名字:") for a in card_list: if SouSuo == a["name"]: for name in ["姓名", "电话", "qq", "邮箱"]: print(name, end="\t\t\t\t") print("") print("%s\t\t%s\t\t%s2\t\t%s" % (a["name"], a["phone"], a["qq"], a["emall"] )) deal_card(a) break else: print("未搜索到%s的名片!" % SouSuo) def deal_card(find_dict): """ @param find_dict: """ action_str = input("请选择要执行的操作" "[1] 修改 [2] 删除 [0] 返回上级菜单") if action_str == "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["emall"] = input_card_info(find_dict["emall"],"邮箱") print("成功修改名片") elif action_str == "2": card_list.remove(find_dict) print("成功删除名片") elif action_str == "0": show_menu() else: print("输入错误,请重新选择!") def input_card_info(dict_value,tip_message): #1.提示用户输入内容 result_str = input_card_info(tip_message) #2.针对用户的输入如进行判断,如果用户输入修改数据,直接返回结果 if len(result_str) > 0: return result_str else: return dict_value #3.如果用户没有输入内容,返回字典中原有的值