亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

用python實現(xiàn)名片管理系統(tǒng)

 更新時間:2020年06月18日 08:57:53   作者:簫騁  
這篇文章主要為大家詳細介紹了用python實現(xiàn)名片管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

python的基礎練習案例——名片管理系統(tǒng),一個控制臺程序的案例練習,平臺為pycharm2017。代碼是看著python視頻學的時候寫的,pycharm運行沒有問題。

系統(tǒng)需求

1、程序啟動,顯示名片管理系統(tǒng)歡迎界面,并顯示功能菜單

歡迎使用【名片管理系統(tǒng)】V1.0

1 新建名片
2顯示全部
3查詢名片

0退出系統(tǒng)

2、用戶用數(shù)字選擇不同的功能

3、根據(jù)功能選擇,執(zhí)行不同的功能

4、用戶名片需要記錄用戶的 姓名、電話、QQ、郵件

5、如果查詢到指定的名片,用戶可以選擇 修改 或者 刪除 名片

步驟

1.框架搭建

2.新增名片

3.顯示所有名片

4.查詢名片

5.查詢成功后修改、刪除名片

6.讓 Python 程序能夠直接運行

代碼:

為了運行方便,將主函數(shù)和自定義函數(shù)分為兩個文件,方便讀者。

代碼如下:

mian:

import cards_tools

# 無線循環(huán),由用戶決定什么時候退出循環(huán)
while True:

 # 顯示功能菜單
 cards_tools.show_menu()
 action_str = input("請選擇希望執(zhí)行的操作:")
 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 退出系統(tǒng)
 elif action_str == "0":
 print("歡迎再次使用【名片管理系統(tǒng)】")
 break
 # 如果在開放程序時,不希望立刻編寫分支內部的代碼
 # 可以使用pass關鍵字,表示一個占位符,能夠保證程序的代碼結構正確
 # 程序運行時,pass關鍵字不會執(zhí)行任何的操作!
 # pass
 # 其他內容輸入錯誤,需要提示用戶
 else:
 print("你輸入不正確,請重新選擇!")

tools:

# 記錄所有的名片字典
card_list = []


def show_menu():
 """顯示菜單"""
 print("*" * 50)
 print("歡迎使用【名片管理系統(tǒng)】V1.0")
 # print("")
 print("1.新增名片")
 print("2.顯示全部")
 print("3.搜索名片")
 # print("")
 print("0.退出系統(tǒng)")
 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 = {"name": name_str,
 "phone": phone_str,
 "QQ": qq_str,
 "email": email_str}
 # 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可以返回一個函數(shù)的執(zhí)行結果
 # 下方的代碼不會被執(zhí)行
 # 若return后面沒有任何內容,表示會返回到調用函數(shù)的位置
 # 并且不返回任何結果
 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"]))


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"]))
 # 針對找到的名片記錄執(zhí)行修改和刪除的操作
 deal_card(card_dict)
 break
 else:
 print("抱歉,沒有找到%s!" % find_name)


def deal_card(find_dict):
 """處理查找到的名片

 :param find_dict:查找到的名片
 """
 print(find_dict)
 action_str = input("請選擇要執(zhí)行的操作 "
 "[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 input_card_info(dict_value, 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

更多學習資料請關注專題《管理系統(tǒng)開發(fā)》。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 在Python中使用Fsolve函數(shù)的過程解析

    在Python中使用Fsolve函數(shù)的過程解析

    這篇文章主要介紹了在Python中使用Fsolve函數(shù)的過程解析,在這篇文章中,我們了解到fsolve?是用來尋找非線性方程的根的,了解到fsolve?可以接受的不同種類的參數(shù)以及每個參數(shù)的含義,需要的朋友可以參考下
    2023-06-06
  • Python實戰(zhàn)實現(xiàn)爬取天氣數(shù)據(jù)并完成可視化分析詳解

    Python實戰(zhàn)實現(xiàn)爬取天氣數(shù)據(jù)并完成可視化分析詳解

    這篇文章主要和大家分享一個用Python實現(xiàn)的小功能:獲取天氣數(shù)據(jù),進行可視化分析,帶你直觀了解天氣情況!感興趣的小伙伴可以學習一下
    2022-06-06
  • Sublime?Text4?配置?Python3?環(huán)境、代碼提示、編譯報錯的解決方案

    Sublime?Text4?配置?Python3?環(huán)境、代碼提示、編譯報錯的解決方案

    這篇文章主要介紹了Sublime?Text4?配置?Python3?環(huán)境、代碼提示、編譯報錯教程,通過圖文并茂的形式給大家介紹了配置自動代碼提示的方法,需要的朋友可以參考下
    2022-01-01
  • Python利用partial偏函數(shù)生成不同的聚合函數(shù)

    Python利用partial偏函數(shù)生成不同的聚合函數(shù)

    本文主要介紹了Python利用partial偏函數(shù)生成不同的聚合函數(shù),利用偏函數(shù)的概念,可以生成一些新的函數(shù),在調用這些新函數(shù)時,不用再傳遞固定值的參數(shù),這樣可以使代碼更簡潔,感興趣的可以了解一下
    2024-03-03
  • Python?Pandas多種添加行列數(shù)據(jù)方法總結

    Python?Pandas多種添加行列數(shù)據(jù)方法總結

    在進行數(shù)據(jù)分析時經常需要按照一定條件創(chuàng)建新的數(shù)據(jù)列,然后進行進一步分析,下面這篇文章主要給大家介紹了關于Python?Pandas多種添加行列數(shù)據(jù)方法的相關資料,需要的朋友可以參考下
    2022-07-07
  • Python字典,函數(shù),全局變量代碼解析

    Python字典,函數(shù),全局變量代碼解析

    這篇文章主要介紹了Python字典,函數(shù),全局變量代碼解析,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Python讀寫二進制文件的實現(xiàn)

    Python讀寫二進制文件的實現(xiàn)

    本文主要介紹了Python讀寫二進制文件的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • python飛機大戰(zhàn)pygame游戲框架搭建操作詳解

    python飛機大戰(zhàn)pygame游戲框架搭建操作詳解

    這篇文章主要介紹了python飛機大戰(zhàn)pygame游戲框架搭建操作,設計pygame模塊游戲創(chuàng)建、初始化、精靈組設置等相關操作技巧,需要的朋友可以參考下
    2019-12-12
  • CodeWhisperer基于python使用經驗分享

    CodeWhisperer基于python使用經驗分享

    這篇文章主要為大家介紹了CodeWhisperer基于python使用經驗分享,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • python判斷是否漢字的5種方法實例

    python判斷是否漢字的5種方法實例

    這篇文章主要給大家介紹了關于python判斷是否漢字的5種方法,文中通過實例代碼將判斷的幾種方法介紹的非常詳細,對大家學習或者使用python具有一定的參考學習價值,需要的朋友可以參考下
    2023-06-06

最新評論