1.#

记录所有名片字典

card_list = []

def show_menu():

print("*" * 50)

print("欢迎使用【名片管理系统】")

print("")

print("1.新增名片")

print("2.显示全部")

print("3.搜索名片")

print("")

print("0.退出系统")

print("*" * 50)

def new_card():

""

"新增名片"

""

print("-" * 50)

print("新增名片")# 1. 提示用户输入名片信息

name = input("请输入姓名:")

phone = input("请输入电话:")

qq = input("请输入QQ:")# 2. 使用用户输入信息建立名片字典

card_dic = {

"name": name,

"phone": phone,

"qq": qq

}#

3. 将名片字典添加到列表中

card_list.append(card_dic)# 4. 提示用户添加成功

print("新增%s的名片成功!" % name)

def show_all():

""

"显示全部"

""

print("-" * 50)

print("显示全部")

if len(card_list) == 0:

print("名片列表为空")

else :

print("姓名\t\t电话\t\tQQ")

print("-" * 50)

for temp in card_list:

print("%s\t\t%s\t\t%s" % (temp["name"], temp["phone"], temp["qq"]))

def search_card():

""

"查询名片"

""

print("-" * 50)

print("查询名片")# 1. 提示用户输入要搜索的姓名

find_name = input("请输入要搜素的姓名:")# 2. 遍历名片列表, 查询要搜索的姓名, 如果没有, 需要提示用户

for temp in card_list:

if temp["name"] == find_name:

print("姓名\t\t电话\t\tQQ")

print("-" * 50)

print("%s\t\t%s\t\t%s" % (temp["name"], temp["phone"], temp["qq"]))# 修改或删除

deal_card(temp)

break

else :

print("查无此人!")

def deal_card(find_dic):

""

"删除、修改名片: param find_dic: 查找的名片 ""

"

print("-" * 50)

print(find_dic)

operation = input("请输入对名片的操作"

"【1】修改【2】删除【0】返回:")

if operation == "1":

find_dic["name"] = input_card(find_dic["name"], "修改姓名【回车不修改】:")

find_dic["phone"] = input_card(find_dic["phone"], "修改电话【回车不修改】:")

find_dic["qq"] = input_card(find_dic["qq"], "修改QQ【回车不修改】:")

elif operation == "2":

card_list.remove(find_dic)

print("删除名片成功!")

def input_card(dic_value, tip_message):

""

"输入名片信息: param dic_value: 字典原有值: param tip_message: 输入的信息: return :输入不为空则返回输入, 输入为空则返回原有值 ""

"#

1. 提示用户输入内容

input_value = input(tip_message)# 2. 针对输入内容进行判断, 如果输入不为空, 直接返回结果

if len(input_value):

return input_value# 3. 如果用户输入为空, 则返回原字典内容

else :

return dic_value

2.

import tools

while True:

tools.show_menu()

action_str = input("请选择希望执行的操作:")

print("您选择的操作是【%s】" % action_str)

if action_str in ["1", "2", "3"]: #新增名片

if action_str == "1":

tools.new_card()# 显示全部

if action_str == "2":

tools.show_all()# 查询名片

if action_str == "3":

tools.search_card()# 0 退出系统

elif action_str == "0":

print("欢迎再次使用【名片管理系统】")

break# 其他内容错误, 提示用户

else :

print("您输入的不正确,请重新选择!")

分为1、 mian.py 2、 tools.py两个文件

python名片管理系统的总结_名片管理系统(Python)相关推荐

  1. java名片识别源码_名片识别名片信息快速提取

    原标题:名片识别名片信息快速提取 以中安的名片识别技术为例剖析,它可提供移动端名片识别OCR API,同时还提供云端名片识别OCR API. Application Programming Inter ...

  2. java名片识别源码_名片识别

    原标题:名片识别 以文通科技的名片识别技术为例剖析,它可提供移动端名片识别OCR API,同时还提供云端名片识别OCR API. Application Programming Interface,简 ...

  3. python都有什么包_常用的Python包有哪些,如何快速掌握Python编程

    Python入门简单.功能强大,是很多想要入行IT开发行业人士的主要选择.Python包可以帮助Web开发人员快速和容易地创建应用程序和功能,因此很多企业在招聘时都会考察求职者对于Python包的掌握 ...

  4. python中sn的意思_深入了解Python

    一.Python的风格 Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读.易维护,并且被大量用户所欢迎的.用途广泛的语言. 设计者开发时总的指导思想是,对于一个特定的问题,只要 ...

  5. python wx窗口无法关闭_菜鸟学Python,双手奉上老司机给上路新手总结的Python实战问题…...

    针对Python这一话题每天后台都会有不少小伙伴提出问题,下面我就将这些问题进行汇整,产出"Python实战问题篇",我认为这些问题非常具有代表性,希望可以帮到大家. 第一类问题: ...

  6. 计算机编程导论python程序设计答案-学堂在线_计算机科学与Python编程导论_作业课后答案...

    学堂在线_计算机科学与Python编程导论_作业课后答案 答案: 更多相关问题 近代中国完全沦为半殖民地半封建社会的标志是:A.<马关条约>B.<辛丑条约>C.<凡尔赛和 ...

  7. python write 写多行_如何用 Python 执行单行命令

    一般来说,面对日常处理的一些小任务,直接用 sed,grep 之类的就可以搞定,更复杂一点的就会考虑 awk 或者用一些现成的轮子,要是 awk 搞不定我就只好用 Python 了.但有些时候,我仅仅 ...

  8. python中的列表理解_掌握『Python列表理解』需要知道的9件事,你知道了吗?

    越来越多的人开始学习Python,它已经成为最流行的编程语言之一,这几乎发生在所有领域.比如网络开发.科学计算,当然还有人工智能. 无论想用python干什么,都绕不开学习Python的数据结构.变量 ...

  9. python如何初始化对象数组_如何理解Python中的面向对象编程?

    (由Python大本营付费下载自视觉中国) 作者 | Radek Fabisiak 译者 | 弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 现如今面向对象编程的使用非常广泛,本文 ...

最新文章

  1. 使用OpenCV构建会玩石头剪刀布的AI
  2. b丅151组成的充电器电路_BT151S-500R118
  3. 基于Springboot实现田径运动会管理系统
  4. Window.resizeTo()
  5. C语言进阶--Day2
  6. HDU 3068 最长回文
  7. linux path环境变量起什么作用,shell基础(5)PATH环境变量的作用和使用方法
  8. vue-cli3.0修改浏览器中的小图标
  9. [转]【建议收藏】优秀实用的OpenCV开源项目汇总
  10. Redis Scan返回数据量大于Limit的Count原因分析
  11. 算法萌新如何学好动态规划(三)
  12. MVPArms框架学习遇到的一个问题——普通Activity配合Fragment出现空指针
  13. 微软内部补丁(非正式发布)之取得方式(20110713)
  14. 可视化大屏设计尺寸_数据可视化大屏设计尺寸怎么定?
  15. 我们很高兴地宣布我们正在与 OKC 整合
  16. 深入理解DNS(域名系统)
  17. 4点策略教你如何做好社群营销
  18. Excel表格数据丢失,怎样能恢复?
  19. Visio中插入Mathtype公式
  20. 来搞清楚CRC校验的原理和实现

热门文章

  1. Thread类的interrupt(),interrupted(),isInterrupted()
  2. tar.zst 文件格式解压
  3. []int16转[]byte
  4. 从1,3,5,7,9,11,13,15中选3个数(选择可重复)作和得30
  5. EXCEL表格-系统时间及进度自动记录工具制作
  6. 【技术科普】VR、AR、MR的区别
  7. 隐马尔科夫链(HMM)
  8. java贝叶斯_贝叶斯算法Java实现
  9. shelljs库使用js达到linux命令操作
  10. (前端)HTML之CSS(选择器字体排版背景)