card_list = []

 def main_desk():
print('*'*50)
print('欢迎使用【名片管理系统】V1.0')
print('1.新建名片')
print('2.显示全部')
print('3.查询名片')
print('0.退出系统')
print('*'*50) def new_card():
print('新建名片')
print('='*50)
name_str = input('姓名:')
age_str = input('年龄:')
phone_str = input('电话:')
card_dict = {'name': name_str, 'age': age_str, 'phone': phone_str}
card_list.append(card_dict)
print(card_dict)
print(f'添加{name_str}名片成功') def show_all():
print('显示全部名片')
print('=' * 50)
if len(card_list) == 0:
print('名片为空,请先新建名片')
return
print('姓名\t\t年龄\t\t电话')
for card_dict in card_list:
print(f'{card_dict["name"]}\t\t{card_dict["age"]}\t\t{card_dict["phone"]}') def search_card():
print('查询名片')
find_name = input('请输入查找的姓名:')
for card_dict in card_list:
if card_dict['name'] == find_name:
print('='*50)
print('姓名\t\t年龄\t\t电话')
print(f'{card_dict["name"]}\t\t{card_dict["age"]}\t\t{card_dict["phone"]}')
deal_card(card_dict)
break
else:
print('名片不存在,请重新输入') def deal_card(find_dict):
action = input('请输入操作:【1】修改【2】删除【0】返回菜单:')
if action == '':
find_dict['name'] = work(find_dict['name'], '姓名:')
find_dict['age'] = work(find_dict['age'], '年龄:')
find_dict['phone'] = work(find_dict['phone'], '电话:')
print('修改名片成功')
elif action == '':
card_list.remove(find_dict)
print('删除成功') def work(dict_value, message):
result_str = input(message)
if len(result_str) > 0:
return result_str
else:
return dict_value while True:
main_desk()
action_str = input('请输入您的操作:')
print(f'您的操作是【{action_str}】')
if action_str == '':
new_card()
elif action_str == '':
show_all()
elif action_str == '':
search_card()
pass
elif action_str == '':
print('欢迎您再次使用【名片管理系统】')
break
else:
print('您的输入有误,请重新输入操作')

 

 

一、Python系列——函数的应用之名片管理系统的更多相关文章

  1. 学习笔记之Python人机交互小项目二:名片管理系统

    继上次利用列表相关知识做了简单的人机交互的小项目名字管理系统后,当学习到字典时,老师又让我们结合列表和字典的知识,结合一起做一个名片管理系统,这里分享给在学习Python的伙伴! 1.不使用函数 1 ...

  2. python视频学习笔记6(名片管理系统开发)

    cards_main.py主函数 cards_tools.py -------------------------------------------------------------------- ...

  3. Python-控制台实现简单的名片管理系统

    通过Python开发一个基于控制台的名片管理系统,具体看下图以及相关代码. cards_main.py文件中提供程序的入口 import cards_toolslx while True: # TOD ...

  4. 2017寒假零基础学习Python系列之函数之 返回多个值

    Python也和C语言一样有自己的标准库,不过在Python中叫做模块(module),这个和C语言中的头文件以及Java中的包类似,其中math就是其中之一,math模块中提供了sin()和cos( ...

  5. Python系列:四、Python函数--技术流ken

    Python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可 ...

  6. python案例:实现一个函数版的名片管理系统

    本案例使用了自定义函数以及对字符串的常见操作.判断语句和循环语句等知识. 要求 必须使用自定义函数,完成对程序的模块化. 名片信息至少包括:姓名.电话.住址. 必须完成的功能:增.删.改.查.退出. ...

  7. 总结整理 -- python系列

    python系列 python--基础学习(一)开发环境搭建,体验HelloWorld python--基础学习(二)判断 .循环.定义函数.继承.调用 python--基础学习(三)字符串单引号.双 ...

  8. Python基础-函数篇

    本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8.内置函数  函数与函数式编程 1.面向对象: 华山派-- ...

  9. 【C++实现python字符串函数库】一:分割函数:split、rsplit

    [C++实现python字符串函数库]split()与rsplit()方法 前言 本系列文章将介绍python提供的字符串函数,并尝试使用C++来实现这些函数.这些C++函数在这里做单独的分析,最后我 ...

随机推荐

  1. Shiro反序列化复现

    Shiro反序列化复现 ——————环境准备—————— 目标靶机:10.11.10.108 //docker环境 攻击机ip:无所谓 vpsip:192.168.14.222 //和靶机ip可通 1 ...

  2. 商城06——solr索引库搭建&solr搜索功能实现&图片显示问题解决

    1.   课程计划 1.搜索工程的搭建 2.linux下solr服务的搭建 3.Solrj使用测试 4.把数据库中的数据导入索引库 5.搜索功能的实现 2.   搜索工程搭建 要实现搜索功能,需要搭建 ...

  3. mysql主从同步失败 Relay log read failure: Could not parse relay log event entry

    mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQ ...

  4. v-if和v-show的使用和特点

    v-if的特点是每次都会重新删除或创建操作 v-show的特点是每次不会进行DOM的删除和创建操作,只是切换了元素的display:none样式 <div id="app"& ...

  5. 【初识Redis】

    1. 前言 1.1 Reis是什么 Redis 是 C 语言开发的一个开源的(遵从 BSD 协议)高性能键值对(key-value)的   NoSQL的内存数据库,可以用作缓存.消息中间件等:具有以下 ...

  6. soapUI使用小结(一)

    本篇博客是照搬虫师的<Web接口开发与自动化测试>一书的soapUI测试工具一节 以及博文http://blog.csdn.net/a19881029/article/details/26 ...

  7. pikachu靶场-CSRF

    xss和csrf区别: CSRF是借用户的权限完成攻击,攻击者并没有拿到用户的权限,而XSS是直接盗取到了用户的权限,然后实施破坏. PS: 由于之前将php5升级到php7,导致靶场环境出现以下问题 ...

  8. Python HTTP Server (Simples)

    Simple HTTP Server 适合临时开发调试web 使用, 直接当前项目下使用python命令快速起一个http server python2 python -m SimpleHTTPSer ...

  9. Chrome插件Postman的数据目录存储位置,记一次重装系统后找回postman数据的过程...

    有次重装系统到一块新的SSD磁盘,很多数据都做了备份就是忘记将Chrome插件Postman的数据做备份,导致重装后找不到以前定义的那些Collections.悔恨之余想到既然我原来的C盘还在,为何不 ...

  10. Linux虚拟网络:Docker网络知识之基础篇

    我们在工作中应用了docker容器化技术,服务的部署.维护和扩展都方便了很多.然而,近期在私有化部署过程中,由于不同服务器环境的复杂多变,常常遇到网络方面的问题,现象为容器服务运行正常,但宿主机.容器 ...