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 相关文章推荐
简单的通用表达式求10乘阶示例
Mar 03 Python
Python时间模块datetime、time、calendar的使用方法
Jan 13 Python
Python爬虫模拟登录带验证码网站
Jan 22 Python
安装Python和pygame及相应的环境变量配置(图文教程)
Jun 04 Python
python实现自动发送报警监控邮件
Jun 21 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
Jan 23 Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
Mar 18 Python
浅谈Python基础—判断和循环
Mar 22 Python
Flask模板引擎之Jinja2语法介绍
Jun 26 Python
tensorflow实现读取模型中保存的值 tf.train.NewCheckpointReader
Feb 10 Python
详解django中Template语言
Feb 22 Python
python statsmodel的使用
Dec 21 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中使用PDF文档功能
2006/10/09 PHP
php的webservice的wsdl的XML无法显示问题的解决方法
2014/03/11 PHP
PHP图像处理类库MagickWand用法实例分析
2015/05/21 PHP
PHP简单实现断点续传下载的方法
2015/09/25 PHP
PHP YII框架开发小技巧之模型(models)中rules自定义验证规则
2015/11/16 PHP
PHP字符串与数组处理函数用法小结
2020/01/07 PHP
用javascript实现的支持lrc歌词的播放器
2007/05/17 Javascript
jQuery EasyUI 中文API Button使用实例
2010/04/14 Javascript
ajax 缓存 问题 requestheader
2010/08/01 Javascript
给jQuery方法添加回调函数一款插件的应用
2013/01/21 Javascript
Web开发必知Javascript技巧大全
2016/02/23 Javascript
jQuery中常用动画效果函数(日常整理)
2016/09/17 Javascript
js实现单张图片平移切换效果
2017/10/11 Javascript
Vue如何从1.0迁移到2.0
2017/10/19 Javascript
微信小程序引入模块中wxml、wxss、js的方法示例
2019/08/09 Javascript
JS中的模糊查询功能
2019/12/08 Javascript
Vue页面渲染中key的应用实例教程
2021/01/12 Vue.js
[03:44]2015国际邀请赛选手档案—Cloud9.NoTail
2015/07/28 DOTA
Python中的列表知识点汇总
2015/04/14 Python
pandas计算最大连续间隔的方法
2019/07/04 Python
Django框架之中间件MiddleWare的实现
2019/12/30 Python
从多个tfrecord文件中无限读取文件的例子
2020/02/17 Python
Tensorflow安装问题: Could not find a version that satisfies the requirement tensorflow
2020/04/20 Python
给keras层命名,并提取中间层输出值,保存到文档的实例
2020/05/23 Python
python Cartopy的基础使用详解
2020/11/01 Python
美国葡萄酒网上商店:Martha Stewart Wine Co.
2019/03/17 全球购物
美丽乡村建设实施方案
2014/03/23 职场文书
出生证明公证书
2014/04/09 职场文书
企业文化标语口号
2014/06/09 职场文书
党支部创先争优承诺书
2014/08/30 职场文书
一份恶作剧的检讨书
2014/09/13 职场文书
群众路线查摆问题整改措施
2014/10/10 职场文书
2016年敬老月活动总结
2016/04/05 职场文书
创业计划书之餐饮
2019/09/02 职场文书
Python Pandas解析读写 CSV 文件
2022/04/11 Python
Java实现简单小画板
2022/06/10 Java/Android