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的curses库使用教程
Apr 11 Python
编写Python脚本把sqlAlchemy对象转换成dict的教程
May 29 Python
解读Django框架中的低层次缓存API
Jul 24 Python
python 内置函数filter
Jun 01 Python
Python django使用多进程连接mysql错误的解决方法
Oct 08 Python
Python实现网页截图(PyQT5)过程解析
Aug 12 Python
python求加权平均值的实例(附纯python写法)
Aug 22 Python
Python3打包exe代码2种方法实例解析
Feb 17 Python
Python 3.8 新功能来一波(大部分人都不知道)
Mar 11 Python
python实现时间序列自相关图(acf)、偏自相关图(pacf)教程
Jun 03 Python
自学python用什么系统好
Jun 23 Python
浅谈python出错时traceback的解读
Jul 15 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脚本的10个技巧(5)
2006/10/09 PHP
使用PHP curl模拟浏览器抓取网站信息
2013/10/28 PHP
JavaScript创建命名空间的5种写法
2014/06/24 PHP
PHP设计模式之工厂模式定义与用法详解
2018/04/03 PHP
掌握PHP垃圾回收机制详解
2019/03/13 PHP
javascript 操作文件 实现方法小结
2009/07/02 Javascript
javascript中的if语句使用介绍
2013/11/20 Javascript
jQuery网页版打砖块小游戏源码分享
2015/08/20 Javascript
JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性
2015/12/26 Javascript
Javascript中字符串和数字的操作方法整理
2017/01/22 Javascript
JavaScript设计模式之建造者模式实例教程
2018/07/02 Javascript
基于Vue 实现一个中规中矩loading组件
2019/04/03 Javascript
Layui数据表格 前后端json数据接收的方法
2019/09/19 Javascript
使用vue制作滑动标签
2019/09/21 Javascript
Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
2019/11/20 Javascript
vue scroll滚动判断的实现(是否滚动到底部、滚动方向、滚动节流、获取滚动区域dom元素)
2020/06/11 Javascript
Python 除法小技巧
2008/09/06 Python
python基础教程之实现石头剪刀布游戏示例
2014/02/11 Python
python中Matplotlib实现绘制3D图的示例代码
2017/09/04 Python
详解用Python练习画个美队盾牌
2019/03/23 Python
Python OpenCV之图片缩放的实现(cv2.resize)
2019/06/28 Python
基于python实现对文件进行切分行
2020/04/26 Python
利用Python实现Json序列化库的方法步骤
2020/09/09 Python
搭建pypi私有仓库实现过程详解
2020/11/25 Python
python 将Excel转Word的示例
2021/03/02 Python
美国宠物用品网站:Value Pet Supplies
2018/03/17 全球购物
Magee 1866官网:Donegal粗花呢外套和大衣专家
2019/11/01 全球购物
开发中都用到了那些设计模式?用在什么场合?
2014/08/21 面试题
法律专业应届本科毕业生求职信
2013/10/25 职场文书
通信研究生自荐信
2014/02/01 职场文书
槐乡的孩子教学反思
2014/04/27 职场文书
初中班级口号
2014/06/09 职场文书
贸易经济专业自荐书
2014/06/29 职场文书
街道党工委党的群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
Python中字符串对象语法分享
2022/02/24 Python
nginx 配置缓存
2022/05/11 Servers