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通过pil模块获得图片exif信息的方法
Mar 16 Python
Python设计模式中单例模式的实现及在Tornado中的应用
Mar 02 Python
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
Jun 14 Python
详解Python进程间通信之命名管道
Aug 28 Python
使用python实现链表操作
Jan 26 Python
python利用smtplib实现QQ邮箱发送邮件
May 20 Python
Python使用gRPC传输协议教程
Oct 16 Python
python 字典 setdefault()和get()方法比较详解
Aug 07 Python
flask框架自定义过滤器示例【markdown文件读取和展示功能】
Nov 08 Python
Python单元测试与测试用例简析
Nov 09 Python
python目标检测给图画框,bbox画到图上并保存案例
Mar 10 Python
python 管理系统实现mysql交互的示例代码
Dec 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实现批量下载百度云盘文件例子分享
2014/04/10 PHP
使用配置类定义Codeigniter全局变量
2014/06/12 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
详解thinkphp中的volist标签
2018/01/15 PHP
基于laravel belongsTo使用详解
2019/10/18 PHP
php获取是星期几的的一些常用姿势
2019/12/15 PHP
jquery对单选框,多选框,文本框等常见操作小结
2014/01/08 Javascript
采用自执行的匿名函数解决for循环使用闭包的问题
2014/09/11 Javascript
JS+CSS实现DIV层的展开、收缩效果
2016/01/28 Javascript
Javascript实现通过选择周数显示开始日和结束日的实现代码
2016/05/30 Javascript
jQuery设置和获取select、checkbox、radio的选中值方法
2017/01/01 Javascript
整理关于Bootstrap排版的慕课笔记
2017/03/29 Javascript
node.js中使用Export和Import的方法
2017/09/18 Javascript
JS实现点击链接切换显示隐藏内容的方法
2017/10/19 Javascript
浅谈Node.js爬虫之网页请求模块
2018/01/11 Javascript
微信小程序url传参写变量的方法
2018/08/09 Javascript
jQuery实现动画、消失、显现、渐出、渐入效果示例
2018/09/06 jQuery
基于Three.js实现360度全景图片
2018/12/30 Javascript
ssm+vue前后端分离框架整合实现(附源码)
2020/07/08 Javascript
vue 获取元素额外生成的data-v-xxx操作
2020/09/09 Javascript
[01:26]神话结束了,却也刚刚开始——DOTA2新英雄玛尔斯驾临战场
2019/03/10 DOTA
跟老齐学Python之网站的结构
2014/10/24 Python
RC4文件加密的python实现方法
2015/06/30 Python
python中subprocess批量执行linux命令
2018/04/27 Python
详解Python打包分发工具setuptools
2019/08/05 Python
python绘制彩虹图
2019/12/16 Python
python numpy库np.percentile用法说明
2020/06/08 Python
捐书寄语赠言
2014/01/18 职场文书
工作业绩不及格检讨书
2014/10/28 职场文书
应届生求职自荐信范文
2015/03/04 职场文书
2015年安全生产月活动总结
2015/03/26 职场文书
三八妇女节主持词
2015/07/04 职场文书
聘用合同范本
2015/09/21 职场文书
党员心得体会范文2016
2016/01/23 职场文书
小程序与后端Java接口交互实现HelloWorld入门
2021/07/09 Java/Android
动画「半妖的夜叉姬」新BD特典图公开
2022/03/22 日漫