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下MySQLdb用法实例分析
Jun 08 Python
Python的Scrapy爬虫框架简单学习笔记
Jan 20 Python
Tensorflow简单验证码识别应用
May 25 Python
对python中Json与object转化的方法详解
Dec 31 Python
详解Python计算机视觉 图像扭曲(仿射扭曲)
Mar 27 Python
django框架实现模板中获取request 的各种信息示例
Jul 01 Python
django数据关系一对多、多对多模型、自关联的建立
Jul 24 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
Dec 27 Python
Python作用域与名字空间原理详解
Mar 21 Python
python3注册全局热键的实现
Mar 22 Python
Pytorch转onnx、torchscript方式
May 25 Python
Python爬虫制作翻译程序的示例代码
Feb 22 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
Linux Apache PHP Oracle 安装配置(具体操作步骤)
2013/06/17 PHP
php foreach正序倒序输出示例代码
2014/07/01 PHP
PHP实现的下载远程图片自定义函数分享
2015/01/28 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
2016/03/23 PHP
JavaScript中的其他对象
2008/01/16 Javascript
开发跨浏览器javascript常见注意事项
2009/01/01 Javascript
js textarea自动增高并隐藏滚动条
2009/12/16 Javascript
Js 冒泡事件阻止实现代码
2013/01/27 Javascript
表格单元格交错着色实现思路及代码
2013/04/01 Javascript
用JavaScript实现一个代码简洁、逻辑不复杂的多级树
2014/05/23 Javascript
Javascript的&&和||的另类用法
2014/07/23 Javascript
JavaScript中对象property的读取和写入方法介绍
2014/12/30 Javascript
jQuery实现分隔条左右拖动功能
2015/11/21 Javascript
详解Bootstrap插件
2016/04/25 Javascript
全面解析Bootstrap中nav、collapse的使用方法
2016/05/22 Javascript
ES6实现的遍历目录函数示例
2017/04/07 Javascript
js使用i18n实现页面国际化的方法
2017/05/09 Javascript
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
详解node-ccap模块生成captcha验证码
2017/07/01 Javascript
如何在vue中使用ts的示例代码
2018/02/28 Javascript
Element ui 下拉多选时新增一个选择所有的选项
2019/08/21 Javascript
微信小程序如何实现精确的日期时间选择器
2020/01/21 Javascript
浅谈使用nodejs搭建web服务器的过程
2020/07/20 NodeJs
利用Python中的mock库对Python代码进行模拟测试
2015/04/16 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
Python装饰器结合递归原理解析
2020/07/02 Python
大学生两会精神学习心得体会
2014/03/10 职场文书
保密承诺书
2014/03/27 职场文书
大学生心理活动总结
2014/07/04 职场文书
党员批评与自我批评思想汇报(集锦)
2014/09/14 职场文书
2014年党支部书记工作总结
2014/12/04 职场文书
2016公司年会通知范文
2015/04/25 职场文书
2016年社区中秋节活动总结
2016/04/05 职场文书
python爬虫请求库httpx和parsel解析库的使用测评
2021/05/10 Python
Java 数组内置函数toArray详解
2021/06/28 Java/Android
vue项目多环境配置(.env)的实现
2021/07/21 Vue.js