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框架的运行方式及处理流程
Apr 08 Python
python数据预处理之将类别数据转换为数值的方法
Jul 05 Python
python pandas消除空值和空格以及 Nan数据替换方法
Oct 30 Python
Python txt文件加入字典并查询的方法
Jan 15 Python
如何安装并使用conda指令管理python环境
Jul 10 Python
python爬虫 Pyppeteer使用方法解析
Sep 28 Python
python手写均值滤波
Feb 19 Python
Python更换pip源方法过程解析
May 19 Python
Keras自定义IOU方式
Jun 10 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
Aug 07 Python
python自动从arxiv下载paper的示例代码
Dec 05 Python
python自动化测试之Selenium详解
Mar 13 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学习之 数组声明
2011/06/09 PHP
jquery 图片截取工具jquery.imagecropper.js
2010/04/09 Javascript
jquery实现图片左右间隔滚动特效(可自动播放)
2013/05/08 Javascript
javascript实现的DES加密示例
2013/10/30 Javascript
利用jquery.qrcode在页面上生成二维码且支持中文
2014/02/12 Javascript
七夕情人节丘比特射箭小游戏
2015/08/20 Javascript
简单介绍JavaScript数据类型之隐式类型转换
2015/12/28 Javascript
JS简单实现动态添加HTML标记的方法示例
2018/04/08 Javascript
一步步教会你微信小程序的登录鉴权
2018/04/09 Javascript
jquery获取元素到屏幕四周可视距离的方法
2018/09/05 jQuery
vue项目打包后上传至GitHub并实现github-pages的预览
2019/05/06 Javascript
详解vue 2.6 中 slot 的新用法
2019/07/09 Javascript
在SSM框架下用laypage和ajax实现分页和数据交互的方法
2019/09/27 Javascript
js异步接口并发数量控制的方法示例
2020/11/22 Javascript
[03:09]DOTA2亚洲邀请赛 LGD战队出场宣传片
2015/02/07 DOTA
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
[47:26]完美世界DOTA2联赛 LBZS vs Forest 第二场 11.07
2020/11/09 DOTA
python中的变量如何开辟内存
2018/06/26 Python
Python 隐藏输入密码时屏幕回显的实例
2019/02/19 Python
django 微信网页授权认证api的步骤详解
2019/07/30 Python
python全局变量引用与修改过程解析
2020/01/07 Python
纯css3实现鼠标经过图片显示描述的动画效果
2014/09/01 HTML / CSS
瑞典领先的汽车零部件网上零售商:bildelaronline24.se
2017/01/12 全球购物
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
美国最大的电子宠物训练产品制造商:PetSafe
2018/10/12 全球购物
计算机应用与科学个人的自我评价
2013/11/15 职场文书
分层教学实施方案
2014/03/19 职场文书
我的大学生活演讲稿
2014/04/25 职场文书
爱与责任演讲稿
2014/05/20 职场文书
社团活动总结报告
2014/06/27 职场文书
2014年食品安全工作总结
2014/12/04 职场文书
小学教代会开幕词
2016/03/04 职场文书
2016年“11.11”光棍节活动总结
2016/04/05 职场文书
导游词之千岛湖
2019/09/23 职场文书
特别篇动画《总之就是非常可爱 ~制服~》PV公开,2022年夏季播出
2022/04/04 日漫
Win11局域网共享权限在哪里设置? Win11高级共享的设置技巧
2022/04/05 数码科技