python的基礎練習案例——名片管理系統,乙個控制台程式的案例練習,平台為pycharm2017。**是看著python**學的時候寫的,pycharm執行沒有問題。
系統需求
1、程式啟動,顯示名片管理系統歡迎介面,並顯示功能選單
歡迎使用【名片管理系統】v1.0
1 新建名片
2顯示全部
3查詢名片
0退出系統
2、使用者用數字選擇不同的功能
3、根據功能選擇,執行不同的功能
4、使用者名片需要記錄使用者的姓名、**、qq、郵件
5、如果查詢到指定的名片,使用者可以選擇 修改 或者刪除 名片
步驟1.框架搭建
2.新增名片
3.顯示所有名片
4.查詢名片
5.查詢成功後修改、刪除名片
6.讓 python 程式能夠直接執行
**:為了執行方便,將主函式和自定義函式分為兩個檔案,方便讀者。
**如下:
mian:
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()
# 0 退出系統
elif action程式設計客棧_str == "0":
print("歡迎再次使用【名片管理系統】")
break
# 如果在開放程式www.cppcns.com時,不希望立刻編寫分支內部的**
# 可以使用pass關鍵字,表示乙個佔位符,能夠保證程式的**結構正確
# 程式執行時,pass關鍵字不會執行任何的操作!
# pass
# 其他內容輸入錯誤,需要提示使用者
else:
print("你輸入不正確,請重新選擇!")
tools:
# 記錄所有的名片字典
card_list =
def show_menu():
"""顯示選單"""
print("*" * 50)
print("歡迎使用【名片管理系統】v1.0")
# print("")
print("1.新增名片")
print("2.顯示全部")
print("3.搜尋名片")
# print("")
print("0.退出系統")
print("*" * 50)
def new_card():
"""新增名片"""
print("-" * 50)
print("新增名片")
# 1.提示使用者輸入名片的詳細資訊
name_str = input("請輸入姓名:")
phone_str = input("請輸入**:")
qq_str = input("請輸入qq:")
email_str = input("請輸入郵箱:")
# 2.使用使用者輸入資訊建立給乙個名片字典
card_dict =
# 3.將名片字典新增到列表中
card_list.append(card_dict)
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)
# 遍歷名片列表依次輸出字典資訊
for card_dict in card_list:
print("%s\t\t%s\t\t%s\t\t%s\t\t" % (card_dict["name"],
card_dict["phone"],
card_dict["qq"],
card_dict["email"]))
dewww.cppcns.comf 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"]))
# 針對找到的名片記錄執行修改和刪除的操作
deal_card(card_dict)
break
else:
print("抱歉,沒有找到%s!" % find_name)
def deal_card(find_dict):
"""處理查詢到的名片
:param find_dict:查詢到的名片
"""print(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["email"] = input_card_info(find_dict["email"], "email: ")
print("修改名片成功")
if action_str == "2":
card_list.remove(find_dict)
print("刪除名片成功")
def tip_message):
"""輸入名片資訊
程式設計客棧
:param dict_value:字典中原有的值
:param tip_message:輸入的提示文字
:return:如果使用者輸入內容,就返回內容,否則返回字典中原有的值
"""# 1.提示使用者輸入內容
result_str = input(tip_message)
# 2.針對使用者的輸入進行判斷,如果使用者輸入了內容,直接返回結果
if len(result_str) > 0:
return result_str
# 如果使用者沒有輸入內容,返回字典中原有的值
else:
return dict_value
本文標題: 用python實現名片管理系統
本文位址:
python實現名片管理系統
project下有兩個python檔案 main.py和tool.py 1.main.py import tool while true tool.show menu action str input 您希望的操作 print 您選擇的操作是 s action str if action str i...
Python實現名片管理系統(物件導向版)
通過類的繼承 父類的呼叫實現物件導向版本的名片管理系統,現在各類系統的功能均已實現物件導向。以後該從物件導向開始進軍下乙個更高階的領域了!car main模組中的 import car tools class card car tools.cardss def main self while tru...
python物件導向實現名片管理系統檔案版
import os def print menu print 50 print 名片管理系統 print 1.新增乙個新名片 print 2.刪除乙個名片資訊 print 3.修改乙個名片資訊 print 4.查詢乙個名片資訊 print 5.顯示新增過的名片資訊 print 6.儲存新增的名片資訊...