最近在學習python,看了黑馬老師課程裡的名片管理,自己寫了一遍,感覺還比較有用。用字典存名片內容,包括名片的新增、修改、顯示全部。
主函式:
功能函式實現:import crad_def
#無限迴圈,0退出
while
true
:#顯示功能選單
card_def.show_menue()
action_str=
input
("請選擇要執行的操作:"
("你選擇的操作是【%s】"
% action_str)
#名片操作
if action_str in
["1"
,"2"
,"3"]:
#新增名片
if action_str==
"1":
card_def.new_card(
)#顯示全部
elif action_str==
"2":
card_def.show_card(
)#查詢名片
elif action_str==
"3":
card_def.search_card(
)elif action_str==
"0":
break
else
("輸入錯誤,請重新選擇:"
)
#記錄所有的名片資訊為了除錯的時候不用每次都輸入,就提前輸入一些例子了
card_list=[,
]def
show_menue()
:#顯示選單
("*"*50
("【歡迎使用名片管理系統】"
)print(""
("1:新增名片"
("2:顯示名片"
("3:搜尋名片"
)print(""
("*"*50
)def
new_card()
:#新增名片
("*"*50
("新增名片"
) name=
input
("請輸入姓名:"
) phone=
input()
qq=input()
emall=
input
()
card_dict=
("新增成功"
)def
show_card()
("*"*50
("顯示名片"
)for name in
["姓名"
,"**"
,"qq"
,"郵箱"]:
("%s"
% name,end=
"\t\t\t"
("="*50
)for card_dict in card_list:
("%s\t\t\t%s\t\t\t%s\t\t\t%s\t\t\t"
%(card_dict[
"name"],
card_dict[
"phone"],
card_dict[
"qq"],
card_dict[
"emall"])
)def
search_card()
("*"*50
("查詢名片"
) find_name=
input
("請輸入要查詢的名字:"
)for card_dict in card_list:
if card_dict[
"name"
]==find_name:
("姓名\t\t**\t\tqq\t\t郵箱\t\t"
("=="*40
("%s\t\t\t%s\t\t\t%s\t\t\t%s\t\t\t"
%(card_dict[
"name"],
card_dict[
"phone"],
card_dict[
"qq"],
card_dict[
"emall"])
) deal_card(card_dict)
#修改刪除名片
break
#修改刪除名片之後說明已經找到,跳出迴圈
else
("抱歉沒有找到%s"
% find_name)
defdeal_card
(find_dict)
:#修改刪除名片
(find_dict)
action_str=
input()
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"],
"郵箱【回車不修改】:"
("修改名片成功"
)elif action_str==
"2":
card_list.remove(find_dict)
("刪除名片成功"
)def
input_card_info
(dict_value,tip_message)
:#修改使用者輸入的方法
#提示使用者輸入
reault_str=
input
(tip_message)
#判斷是否輸入值
iflen
(reault_str)
>0:
return reault_str#返回輸入的值
#如果沒有輸入返回原值
else
:return dict_value#返回原有的值
C Templates學習筆記 例項化
一 on demand例項化 有時候也被稱為隱式例項化或者自動例項化。on demand例項化表明 在使用模板 特化 的地方,編譯器通常需要訪問模板和某些模板成員的整個定義。例子 templateclass c 前置宣告 c p 0 正確,因為這裡不需要知道c的定義 template class c...
Python學習筆記 例項方法和靜態方法
例項的方法就是在類中定義的函式 class中定義的全部是例項方法,例項方法第乙個引數 self 是例項本身。在class中定義類方法,要加 classmethod 定義靜態方法要加 staticmethod 類方法 方法的第乙個引數都是類物件而不是例項物件 cls 區別主要體現在兩個方面 1.在外部...
C 語言程式設計基礎筆記(例項1 10)
例項1 輸出 include stdafx.h include using namespace std int main 結果 hello welcome to c 例項2 讀取並顯示整數 include stdafx.h include using namespace std int main 結...