python3实现名片管理系统(控制台版)


Posted in Python onNovember 29, 2020

本文实例为大家分享了python3实现名片管理系统的具体代码,供大家参考,具体内容如下

系统主要是:1.新增名片 2.显示全部 3.查询名片 0.退出系统

python3实现名片管理系统(控制台版)

card_main.py

import card_tools
 
while True:
 """
  1.新增名片 2.显示全部 3.查询名片 0.退出系统
 """
 
 card_tools.show_menu() # 显示系统菜单
 action_str = card_tools.input_deal()
 
 if action_str == 1:
  print("您的操作是:%d" % action_str)
  card_tools.new_card()
  print()
 elif action_str == 2:
  print("您的操作是:%d" % action_str)
  card_tools.show_all()
  print()
 elif action_str == 3:
  print("您的操作是:%d" % action_str)
  card_tools.find_card()
  print()
 elif action_str == 0:
  print("退出系统")
  break
 else:
  print("您输入的不正确")

card_tools.py

#! /usr/bin/python3
card_list = []
 
 
def input_deal():
 """
 输入处理
 :return:
 """
 while True:
  try:
   action_str = int(input("请输入你的操作:"))
  except ValueError:
   print("输入不正确,请重新输入!")
  else:
   return action_str
 
 
def show_menu():
 """
 显示名片系统的菜单
 :return:
 """
 
 print("*" * 50)
 print("名片管理系统1.0".center(21, " "))
 print("1.新建名片".center(10, "\t"))
 print("2.显示全部".center(10, "\t"))
 print("3.查询名片".center(10, "\t"))
 print("0.退出系统".center(10, "\t"))
 print("*" * 50)
 
 
def new_card():
 """
 新增名片
 :return:
 """
 
 print("新增名片")
 name = input("请输入您的名字:")
 phone = input("请输入您的手机号码:")
 qq = input("请输入您的QQ号码:")
 email = input("请输入您的邮箱地址:")
 card_dict = {"name": name, "phone": phone, "qq": qq, "email": email}
 # print(card_dict)
 
 card_list.append(card_dict);
 print(card_list)
 
 
def show_all():
 """
 显示所有名片
 :return:
 """
 for name in ["姓名", "电话", "QQ", "邮箱"]:
  print(name, end="\t\t")
 print()
 # print(card_list)
 
 if len(card_list) == 0:
  print("名片为空,请添加。")
 
 for card_dict in card_list:
  print("%s\t\t\t%s\t\t\tt%s\t\t\t%s" % (
   card_dict['name'], card_dict['phone'], card_dict['qq'], card_dict['email']))
 
 
def find_card():
 """
 查询名片
 :return:
 """
 find_name = input("请输入您要查询的姓名:")
 for card_dict in card_list:
  if card_dict['name'] == find_name:
   print("查询成功")
   print(card_dict)
   deal_card(card_dict)
   break
 else:
  print("查询失败")
 
 
def deal_card(card_dict):
 """
 对名片进行修改,查询
 :return:
 """
 
 action_str = input("请输入你要的操作:1.修改 2.删除 0.返回上级菜单")
 
 if action_str == "1":
  print("您的操作是:%s" % action_str)
  name = deal_input(card_dict, input("请输入您的名字:"), "name")
  phone = deal_input(card_dict, input("请输入您的手机号码:"), "phone")
  qq = deal_input(card_dict, input("请输入您的QQ号码:"), "qq")
  email = deal_input(card_dict, input("请输入您的邮箱地址:"), "email")
  card_dict['name'] = name
  card_dict['phone'] = phone
  card_dict['qq'] = qq
  card_dict['email'] = email
 
 elif action_str == "2":
  print("您的操作是:%s" % action_str)
  card_list.remove(card_dict)
  print("删除成功")
 else:
  print("返回上级菜单")
 
 
def deal_input(card_dict, str1, str2):
 """
 处理要修改的输入值
 :param card_dict:
 :param str1:
 :param str2:
 :return:
 """
 if len(str1) == 0:
  return card_dict[str2]
 else:
  return str1

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python django集成cas验证系统
Jul 14 Python
跟老齐学Python之通过Python连接数据库
Oct 28 Python
python获取list下标及其值的简单方法
Sep 12 Python
详解 Python 与文件对象共事的实例
Sep 11 Python
Python实现的字典值比较功能示例
Jan 08 Python
python用BeautifulSoup库简单爬虫实例分析
Jul 30 Python
浅析Python 实现一个自动化翻译和替换的工具
Apr 14 Python
python flask解析json数据不完整的解决方法
May 26 Python
django的ORM操作 增加和查询
Jul 26 Python
Django连接数据库并实现读写分离过程解析
Nov 13 Python
PyTorch-GPU加速实例
Jun 23 Python
python+pytest接口自动化之token关联登录的实现
Apr 06 Python
python3实现简单飞机大战
Nov 29 #Python
Python基于Socket实现简易多人聊天室的示例代码
Nov 29 #Python
python3实现飞机大战
Nov 29 #Python
python之pygame模块实现飞机大战完整代码
Nov 29 #Python
Python使用Pygame绘制时钟
Nov 29 #Python
详解pandas赋值失败问题解决
Nov 29 #Python
python 获取剪切板内容的两种方法
Nov 28 #Python
You might like
PHP 程序授权验证开发思路
2009/07/09 PHP
php 获取可变函数参数的函数
2009/08/26 PHP
PHP的变量总结 新手推荐
2011/04/18 PHP
PHP 中 Orientation 属性判断上传图片是否需要旋转
2015/10/16 PHP
微信支付开发维权通知实例
2016/07/12 PHP
yii2 resetful 授权验证详解
2017/05/18 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
取键盘键位ASCII码的网页
2007/07/30 Javascript
js window.event对象详尽解析
2009/02/17 Javascript
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
2011/07/10 Javascript
javascript对话框使用方法(警告框 javascript确认框 提示框)
2014/01/07 Javascript
JS 获取浏览器和屏幕宽高等信息代码
2014/03/31 Javascript
JavaScript中toString()方法的使用详解
2015/06/05 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
JS脚本根据手机浏览器类型跳转WAP手机网站(两种方式)
2015/08/04 Javascript
JavaScript中的prototype原型学习指南
2016/05/09 Javascript
微信小程序 传值取值的几种方法总结
2017/01/16 Javascript
Angular4学习笔记之实现绑定和分包
2017/08/01 Javascript
浅谈Vue的响应式原理
2019/05/30 Javascript
Vue解析带html标签的字符串为dom的实例
2019/11/13 Javascript
[01:29:46]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第二局
2016/02/27 DOTA
python通过urllib2获取带有中文参数url内容的方法
2015/03/13 Python
在Python的Django框架中编写错误提示页面
2015/07/22 Python
python开发简易版在线音乐播放器
2017/03/03 Python
django manage.py扩展自定义命令方法
2018/05/27 Python
Python django搭建layui提交表单,表格,图标的实例
2019/11/18 Python
Keras 快速解决OOM超内存的问题
2020/06/11 Python
Python TestSuite生成测试报告过程解析
2020/07/23 Python
实例教程 HTML5 Canvas 超炫酷烟花绽放动画实现代码
2014/11/05 HTML / CSS
法国房车租赁网站:Yescapa
2019/08/26 全球购物
五年级数学教学反思
2014/02/11 职场文书
教师考核评语
2014/04/28 职场文书
民主生活会对照检查材料思想汇报
2014/09/27 职场文书
团队会宣传标语
2014/10/09 职场文书
导游词之安徽九华山
2019/09/18 职场文书
MySQL 逻辑备份 into outfile
2022/05/15 MySQL