主程式
import cards_tools
# 無限迴圈,由使用者主動決定什麼時候退出迴圈!
while true:
# 顯示功能選單
cards_tools.show_menu()
action_str = input("請選擇希望執行的操作:")
print("您選擇的操作是【%s】" % action_str)
# 1,2,3 針對名片的操作 這裡就是乙個列表,然後或者的選擇內容
if action_str in ["1", "2", "3"]:
# 新增名片
if action_str == "1":
cards_tools.new_card()
# 顯示全部
elif action_str == "2":
cards_tools.show_all()
# 查詢名片
elif action_str == "3":
cards_tools.search_card()
#pass
# 0 退出系統
elif action_str == "0":
print("歡迎再次使用【名片管理系統】")
break
# 如果在開發程式時,不希望立刻編寫分支內部的**
# 可以使用 pass 關鍵字,表示乙個佔位符,能夠保證程式的**結構正確!
# 程式執行時,pass 關鍵字不會執行任何的操作!
pass
# 其他內容輸入錯誤,需要提示使用者
else:
print("您輸入的不正確,請重新選擇")
函式的其他功能的編寫增刪改查的功能
# 記錄所有的名片字典
card_list =
def show_menu():
"""顯示選單"""
print("*" * 50)
print("歡迎使用【名片管理系統】v 1.0")
print("")
print("1. 新增名片")
print("2. 顯示全部")
print("3. 搜尋名片")
print("")
print("0. 退出系統")
print("*" * 50)
def new_card():
"""新增名片"""
print("-" * 50)
print("新增名片")
# 1. 提示使用者輸入名片的詳細資訊
name_str = input("請輸入姓名:")
# 2. 使用使用者輸入的資訊建立乙個名片字典
card_dict =
# 3. 將名片字典新增到列表中
print(card_list)
# 4. 提示使用者新增成功
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="\t\t")
print("")
# 列印分隔線
print("=" * 50)
# 遍歷名片列表依次輸出字典資訊
#print(card_dict) 如果這樣寫的情況下,到時候就顯示所有的鍵與值出來,
#下面的 print("%s" % (card_dict["name"]) 就是單獨顯示的值
for card_dict in card_list:
print("%s\t\t%s\t\t%s\t\t%s" % (card_dict["name"],
card_dict["phone"],
card_dict["qq"],
card_dict["email"]))
def search_card():
"""搜尋名片"""
print("-" * 50)
print("搜尋名片")
# 1. 提示使用者輸入要搜尋的姓名
find_name = input("請輸入要搜尋的姓名:")
# 2. 遍歷名片列表,查詢要搜尋的姓名,如果沒有找到,需要提示使用者
for card_dict in card_list:
if card_dict["name"] == find_name:
print("姓名\t\t**\t\tqq\t\t郵箱")
print("=" * 50)
print("%s\t\t%s\t\t%s\t\t%s" % (card_dict["name"],
card_dict["phone"],
card_dict["qq"],
card_dict["email"]))
# todo 針對找到的名片記錄執行修改和刪除的操作
deal_card(card_dict)
break
else:
print("抱歉,沒有找到 %s" % find_name)
"""處理查詢到的名片
:param find_dict: 查詢到的名片
"""def deal_card(find_dict):
print(find_dict)
action_str = input("請選擇要執行的操作 "
"[1] 修改 [2] 刪除 [0] 返回上級選單")
if action_str == "1":
find_dict["name"] = input_card_info(find_dict["name"], "姓名:")
print("修改名片成功!")
elif action_str == "2":
card_list.remove(find_dict)
print("刪除成功")
"""輸入名片資訊
:param dict_value: 字典中原有的值
:param tip_message: 輸入的提示文字
:return: 如果使用者輸入了內容,就返回內容,否則返回字典中原有的值
"""def input_card_info(dict_value, tip_message):
# 1. 提示使用者輸入內容
result_str = input(tip_message)
# 2. 針對使用者的輸入進行判斷,如果使用者輸入了內容,直接返回結果
if len(result_str) > 0:
return result_str
# 3. 如果使用者沒有輸入內容,返回 `字典中原有的值`
else:
return dict_value
Python實戰之實現簡單的名片管理系統
實現名片管理系統,首先要建立兩個python file 分別是cards main.py和cards tool.py,前乙個是主 塊的實現,後乙個是提供主 塊所呼叫的函式 import cards程式設計客棧 tool as ct 匯入cards tool檔案,簡稱ct,以便呼叫其中的函式 whil...
python初級的名片管理系統
現在 是我在學習過程建立的小專案 我們 現在新建立乙個 main.py 的檔案 import cards tools while true cards tools.show menu action str input 清選擇希望執行的操作 print 你選擇的操作是 s action str if ...
python 名片管理系統
框架搭建 新增名片 顯示所有名片 查詢名片 查詢成功後修改 刪除名片 讓 python 程式能夠直接執行 main.py 一般寫業務邏輯 from tool import while true show menu operation int input 請輸入您的操作 print 您選擇的操作是 s...