最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

python的基礎(chǔ)練習(xí)案例——名片管理系統(tǒng),一個(gè)控制臺(tái)程序的案例練習(xí),平臺(tái)為pycharm2017。代碼是看著python視頻學(xué)的時(shí)候?qū)懙?,pycharm運(yùn)行沒(méi)有問(wèn)題。

系統(tǒng)需求

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

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

1 新建名片
2顯示全部
3查詢(xún)名片

0退出系統(tǒng)

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

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

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

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

步驟

1.框架搭建

2.新增名片

3.顯示所有名片

4.查詢(xún)名片

5.查詢(xún)成功后修改、刪除名片

6.讓 Python 程序能夠直接運(yùn)行

代碼:

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

代碼如下:

mian:

import cards_tools

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

 # 顯示功能菜單
 cards_tools.show_menu()
 action_str = input("請(qǐng)選擇希望執(zhí)行的操作:")
 print("你選擇的操作是【%s】" % action_str)
 # 1,2,3針對(duì)名片的操作
 if action_str in ["1", "2", "3"]:
 # 新增名片
 if action_str == "1":
 cards_tools.new_card()
 # 顯示全部
 elif action_str == "2":
 cards_tools.show_all()
 # 查詢(xún)名片
 elif action_str == "3":
 cards_tools.search_card()
 # 0 退出系統(tǒng)
 elif action_str == "0":
 print("歡迎再次使用【名片管理系統(tǒng)】")
 break
 # 如果在開(kāi)放程序時(shí),不希望立刻編寫(xiě)分支內(nèi)部的代碼
 # 可以使用pass關(guān)鍵字,表示一個(gè)占位符,能夠保證程序的代碼結(jié)構(gòu)正確
 # 程序運(yùn)行時(shí),pass關(guān)鍵字不會(huì)執(zhí)行任何的操作!
 # pass
 # 其他內(nèi)容輸入錯(cuò)誤,需要提示用戶
 else:
 print("你輸入不正確,請(qǐng)重新選擇!")

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.提示用戶輸入名片的詳細(xì)信息
 name_str = input("請(qǐng)輸入姓名:")
 phone_str = input("請(qǐng)輸入電話:")
 qq_str = input("請(qǐng)輸入QQ:")
 email_str = input("請(qǐng)輸入郵箱:")
 # 2.使用用戶輸入信息建立給一個(gè)名片字典
 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("顯示所有名片")
 # 判斷是否存在名片記錄,若無(wú),提示用戶并返回
 if len(card_list) == 0:
 print("當(dāng)前沒(méi)有任何的名片記錄,請(qǐng)使用新增功能添加名片!")
 # return可以返回一個(gè)函數(shù)的執(zhí)行結(jié)果
 # 下方的代碼不會(huì)被執(zhí)行
 # 若return后面沒(méi)有任何內(nèi)容,表示會(huì)返回到調(diào)用函數(shù)的位置
 # 并且不返回任何結(jié)果
 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("請(qǐng)輸入要搜索的姓名:")
 # 2.遍歷名片列表,查詢(xún)要搜索的姓名,如果沒(méi)有找到需要提示用戶。
 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"]))
 # 針對(duì)找到的名片記錄執(zhí)行修改和刪除的操作
 deal_card(card_dict)
 break
 else:
 print("抱歉,沒(méi)有找到%s!" % find_name)


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

 :param find_dict:查找到的名片
 """
 print(find_dict)
 action_str = input("請(qǐng)選擇要執(zhí)行的操作 "
 "[1]修改 [2]刪除 [0]返回上級(jí)菜單")
 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:如果用戶輸入內(nèi)容,就返回內(nèi)容,否則返回字典中原有的值
 """
 # 1.提示用戶輸入內(nèi)容
 result_str = input(tip_message)
 # 2.針對(duì)用戶的輸入進(jìn)行判斷,如果用戶輸入了內(nèi)容,直接返回結(jié)果
 if len(result_str) > 0:
 return result_str
 # 如果用戶沒(méi)有輸入內(nèi)容,返回字典中原有的值
 else:
 return dict_value

更多學(xué)習(xí)資料請(qǐng)關(guān)注專(zhuān)題《管理系統(tǒng)開(kāi)發(fā)》。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python通過(guò)matplotlib繪制動(dòng)畫(huà)簡(jiǎn)單實(shí)例

    Python通過(guò)matplotlib繪制動(dòng)畫(huà)簡(jiǎn)單實(shí)例

    這篇文章主要介紹了Python通過(guò)matplotlib繪制動(dòng)畫(huà)簡(jiǎn)單實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12
  • python之mock模塊基本使用方法詳解

    python之mock模塊基本使用方法詳解

    這篇文章主要介紹了python之mock模塊基本使用方法詳解,Mock是Python中一個(gè)用于支持單元測(cè)試的庫(kù),它的主要功能是使用mock對(duì)象替代掉指定的Python對(duì)象,以達(dá)到模擬對(duì)象的行為,需要的朋友可以參考下
    2019-06-06
  • python給指定csv表格中的聯(lián)系人群發(fā)郵件(帶附件的郵件)

    python給指定csv表格中的聯(lián)系人群發(fā)郵件(帶附件的郵件)

    這篇文章主要介紹了python給指定csv表格中的聯(lián)系人群發(fā)郵件,本文通過(guò)代碼講解的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 在漏洞利用Python代碼真的很爽

    在漏洞利用Python代碼真的很爽

    在漏洞利用Python代碼真的很爽...
    2007-08-08
  • 解鎖Python并發(fā)編程中多線程與多進(jìn)程的應(yīng)用

    解鎖Python并發(fā)編程中多線程與多進(jìn)程的應(yīng)用

    本文我們將先從基本概念開(kāi)始,然后通過(guò)詳細(xì)舉例探討每一種機(jī)制,特別關(guān)注多線程和多進(jìn)程的應(yīng)用,最后分享一些實(shí)戰(zhàn)經(jīng)驗(yàn)以及一種優(yōu)雅的編程技巧,希望對(duì)大家有所幫助
    2023-05-05
  • 利用OpenCV+Tensorflow實(shí)現(xiàn)的手勢(shì)識(shí)別

    利用OpenCV+Tensorflow實(shí)現(xiàn)的手勢(shì)識(shí)別

    這幾天沒(méi)事,想著再學(xué)點(diǎn)一些視覺(jué)識(shí)別方向的東西,因?yàn)橹白隽蓑?yàn)證碼識(shí)別,有了機(jī)器學(xué)習(xí)的信心,因此這次打算做個(gè)手勢(shì)識(shí)別,下面這篇文章主要給大家介紹了關(guān)于利用OpenCV+Tensorflow實(shí)現(xiàn)的手勢(shì)識(shí)別的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • python獲取本地計(jì)算機(jī)名字的方法

    python獲取本地計(jì)算機(jī)名字的方法

    這篇文章主要介紹了python獲取本地計(jì)算機(jī)名字的方法,涉及Python獲取本地計(jì)算機(jī)信息的相關(guān)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2015-04-04
  • 使用Python實(shí)現(xiàn)管理系統(tǒng)附源碼

    使用Python實(shí)現(xiàn)管理系統(tǒng)附源碼

    這篇文章主要為大家介紹了Python實(shí)現(xiàn)管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-01-01
  • Django中使用group_by的方法

    Django中使用group_by的方法

    這篇文章主要介紹了Django中使用group_by的方法,實(shí)例分析了在Django中使用group_by語(yǔ)句的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • Python數(shù)據(jù)清洗工具之Numpy的基本操作

    Python數(shù)據(jù)清洗工具之Numpy的基本操作

    Numpy的操作對(duì)象是一個(gè)ndarray,所以在使用這個(gè)庫(kù)進(jìn)行計(jì)算的時(shí)候需要將數(shù)據(jù)進(jìn)行轉(zhuǎn)化,這篇文章主要介紹了Python數(shù)據(jù)清洗工具之Numpy的基本操作,需要的朋友可以參考下
    2021-04-04

最新評(píng)論

吴川市| 百色市| 安平县| 天峨县| 沭阳县| 瑞金市| 澄城县| 沅江市| 鄂托克旗| 宝坻区| 泰来县| 三原县| 临安市| 莎车县| 宁国市| 泰顺县| 渭源县| 石柱| 三门县| 民县| 夏津县| 砚山县| 广安市| 宜春市| 逊克县| 朝阳县| 佛坪县| 永兴县| 阳原县| 毕节市| 霍林郭勒市| 布尔津县| 永胜县| 阿拉善左旗| 南陵县| 镇巴县| 东宁县| 涪陵区| 塔城市| 莒南县| 洪雅县|