本文實例為大家分享了python實現名片管理系統的具體代碼,供大家參考,具體內容如下
系統需求
程序啟動,顯示名片管理系統歡迎界面,并顯示功能菜單
用戶用數字選擇不同的功能 根據功能選擇,執行不同的功能 用戶名片需要記錄用戶的 姓名、電話、QQ、郵件 如果查詢到指定的名片,用戶可以選擇 修改 或者 刪除 名片 信息保存本地**************************************************
歡迎使用【名片管理系統】V1.0
1. 新建名片
2. 顯示全部
3. 查詢名片
0. 退出系統
**************************************************
需求分析
代碼實現
代碼很簡潔,注釋太多 容易凌亂。
cards_main.py
import cards_tool# 主業務邏輯cards_tool.read_card() # 1.顯示用戶主界面while True: cards_tool.show_menu() menu_str = input("請選擇執行的操作:") print("您選擇的功能:%s" % menu_str) if menu_str == "1": cards_tool.create_card() elif menu_str == "2": cards_tool.show_card_all() elif menu_str == "3": cards_tool.search_card() elif menu_str == "0": cards_tool.write_card() break else: print("輸入有誤,請重新輸入")
cards_tool.py
import oscard_info_all = [] # 所有名片信息# 名片管理 具體功能def write_card(): """退出系統時,將名片信息保存到文件夾中""" f = open("E://workspace_python//FirstDemo//名片管理系統.txt", "w") f.write(str(card_info_all)) f.close() def read_card(): """進入系統時,將名片信息加載到內存中""" is_exist = os.path.exists("E://workspace_python//FirstDemo//名片管理系統.txt") if is_exist: # 文件存在將信息加載到內存中 f = open("E://workspace_python//FirstDemo//名片管理系統.txt","r") global card_info_all card_info_all = eval(f.read()) # print(card_info_all) f.close() else: # 沒有文件創建空文件 f = open("E://workspace_python//FirstDemo//名片管理系統.txt", "w") f.close() print(is_exist) def show_menu(): """主菜單頁面展示""" print("*"*30) print("歡迎使用[命名管理系統] v1.0") print() print("1.新建名片") print("2.顯示全部") print("3.查詢名片") print() print("0.退出系統") print("*"*30) def create_card(): """新建名片""" print("功能:新建名片") name = input("請輸入姓名:") phone = input("請輸入電話:") qq = input("請輸入qq號:") email = input("請輸入郵箱:") card_info = {"name":name,"phone":phone, "qq":qq, "email":email} card_info_all.append(card_info) print("添加%s的名片成功" % name) def show_card_all(): """顯示所有名片""" print("功能:顯示全部") if not len(card_info_all): print("沒有任何名片") return print("name".ljust(14),"phone".ljust(14),"qq".ljust(14),"email".ljust(14),sep="") print("-"*56) for card in card_info_all: print(card["name"].ljust(14),card["phone"].ljust(14),card["qq"].ljust(14),card["email"].ljust(14),sep="") print("-"*56) def search_card(): """查詢名片""" print("功能:查詢名片") name = input("請輸入查詢的姓名:") for card in card_info_all: if name == card["name"]: print("name".ljust(14), "phone".ljust(14), "qq".ljust(14), "email".ljust(14), sep="") print("-" * 56) print(card["name"].ljust(14), card["phone"].ljust(14), card["qq"].ljust(14), card["email"].ljust(14),sep="") # 名片高級處理 set_card(card) break; else: print("沒有找到%s" % name) def set_card(card): """名片的高級設置""" while True: menu = input("請輸入對名片的操作:1.修改/ 2.刪除/ 0.返回上一級") if menu == "1": name = input("請輸入姓名:") phone = input("請輸入電話:") qq = input("請輸入qq號:") email = input("請輸入郵箱:") card["name"] = name card["phone"] = phone card["qq"] = qq card["email"] = email print("%s 的名片修改成功" % name) return elif menu == "2": card_info_all.remove(card) print("刪除名片成功") return elif menu == "0": return else: print("輸入有誤,請重新輸入")
新聞熱點
疑難解答