python面向对象实现名片管理系统文件版


Posted in Python onApril 26, 2019

本文实例为大家分享了python实现名片管理系统源代码,供大家参考,具体内容如下

import os
def print_menu():
 print("*"*50)
 print("  名片管理系统")
 print("  1.添加一个新名片")
 print("  2.删除一个名片信息")
 print("  3.修改一个名片信息")
 print("  4.查找一个名片信息")
 print("  5.显示添加过的名片信息")
 print("  6.保存添加的名片信息")
 print("  7.退出系统")
 print("*"*50)
card_infor = []
def add_new_card_infor():
 new_name = input("请输入要添加的名字:")
 new_qq = input("请输入Qq:")
 new_weixin = input("请输入微信号:")
 new_position = input("请输入工作职位")
 new_addr = input("请输入工作地址")
 """创建一个字典来存放添加的内容"""
 new_infor = {}
 new_infor['name'] = new_name
 new_infor['qq'] = new_qq
 new_infor['weixin'] = new_weixin
 new_infor['position'] = new_position
 new_infor['addr'] = new_addr
 """将字典刚入一个列表中"""
 global card_infor
 card_infor.append(new_infor)
def del_card_infor():
 del_name =input("请输入要删除的名片")

 global card_infor
 for temp in card_infor:
  if del_name == temp['name']:
   print("删除的名片如下")
   card_infor.remove(temp)
   print("%s\t\t%s\t\t%s\t\t%s\t\t%s"%(temp['name'],temp['qq'],temp['weixin'],temp['position'],temp['addr']))
  else:
   print("不存在")
   return del_card_infor()
def change_care_infor():
 change_name_card = input("请输入需要修改的名片名字")
 global card_infor
 for temp in card_infor:
  if change_name_card == temp['name']:
   new_name = input("请输入要修改的名字")
   new_qq = input("请输入要修改的qq")
   new_weixin = input("请输入要修改的微信")
   new_position = input("请输入要修改的职业")
   new_addr = input("请输入要修改的地址")
   temp['name'] = new_name
   temp['qq'] = new_qq
   temp['weixin'] = new_weixin
   temp['position'] = new_position
   temp['addr'] = new_addr
   print("修改成功")
   break
  else:
   print("您要修改的名片不存在")

def find_card_infor():
 global card_infor
 find_name = input("请输入要在查找的内容\n")
 find = 0
 for temp in card_infor:
  if find_name == temp['name']:
   print("查询成功\n")
   print("%s\t\t%s\t\t%s\t\t%s\t\t%s"%(temp['name'],temp['qq'],temp['weixin'],temp['position'],temp['addr']))
   find = 1
   break
  else:
   print("您要查询的名片不存在,请重新输入")
   return find_card_infor()
def display_card_infor():
 global card_infor
 print("姓名\t\tQQ\t\t微信\t\t工作\t\t住址")
 for temp in card_infor:
  print("%s\t\t%s\t\t%s\t\t%s\t\t%s"%(temp['name'],temp['qq'],temp['weixin'],temp['position'],temp['addr']))
def save_card_infor():
 global card_infor
 f = open("save_card.data","w")
 f.write(str(card_infor))
 f.close()
def load_card_infor():
 """恢复保存的信息"""
 global card_infor
 try:
  f = open('save_card.data')
  card_infor = eval(f.read())
  f.close()
 except Exception:
  pass
def main():
 load_card_infor()
 """把恢复保存的信息加载到程序中"""
 print_menu()
 """加载首页操作页面"""
 while True:
  num = int(input("请输入你要选择的功能序号"))
  if(num==1):
   add_new_card_infor()
  elif(num==2):
   del_card_infor()
  elif(num==3):
   change_care_infor()
  elif(num==4):
   find_card_infor()
  elif(num==5):
   display_card_infor()
  elif(num==6):
   save_card_infor()
  elif(num==7):
   break
  else:
   print("输入有误,请重新输入")
  print()
if __name__ == "__main__":
 main()

运行界面

python面向对象实现名片管理系统文件版

python面向对象实现名片管理系统文件版

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现矩阵转置的方法分析
Nov 24 Python
Python实现抢购IPhone手机
Feb 07 Python
对numpy中轴与维度的理解
Apr 18 Python
Python基础知识点 初识Python.md
May 14 Python
Python List列表对象内置方法实例详解
Oct 22 Python
Python中低维数组填充高维数组的实现
Dec 02 Python
postman和python mock测试过程图解
Feb 22 Python
python opencv 检测移动物体并截图保存实例
Mar 10 Python
Python 线性回归分析以及评价指标详解
Apr 02 Python
python的dict判断key是否存在的方法
Dec 09 Python
django上传文件的三种方式
Apr 29 Python
Python移位密码、仿射变换解密实例代码
Jun 27 Python
Python判断对象是否为文件对象(file object)的三种方法示例
Apr 26 #Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
Apr 26 #Python
浅谈python新式类和旧式类区别
Apr 26 #Python
Python静态类型检查新工具之pyright 使用指南
Apr 26 #Python
Python3中_(下划线)和__(双下划线)的用途和区别
Apr 26 #Python
详解Python爬取并下载《电影天堂》3千多部电影
Apr 26 #Python
Python 2/3下处理cjk编码的zip文件的方法
Apr 26 #Python
You might like
php随机获取金山词霸每日一句的方法
2015/07/09 PHP
ThinkPHP打水印及设置水印位置的方法
2016/10/14 PHP
nodejs实现的一个简单聊天室功能分享
2014/12/06 NodeJs
JavaScript设置获取和设置属性的方法
2015/03/04 Javascript
JavaScript淡入淡出渐变简单实例
2015/08/06 Javascript
用js实现放大镜的效果的简单实例
2016/05/23 Javascript
微信小程序 window_x64环境搭建
2016/09/30 Javascript
node.js实现博客小爬虫的实例代码
2016/10/08 Javascript
Bootstrap的modal拖动效果
2016/12/25 Javascript
JavaScript字符集编码与解码详谈
2017/02/02 Javascript
canvas绘图不清晰的解决方案
2017/02/28 Javascript
JS实现汉字与Unicode码相互转换的方法详解
2017/04/28 Javascript
Jquery获取radio选中的值
2017/05/05 jQuery
JS中offset和匀速动画详解
2018/02/06 Javascript
原生JS实现获取及修改CSS样式的方法
2018/09/04 Javascript
vue-router之nuxt动态路由设置的两种方法小结
2018/09/26 Javascript
原生JS实现的自动轮播图功能详解
2018/12/28 Javascript
基于vue框架手写一个notify插件实现通知功能的方法
2019/03/31 Javascript
微信自定义分享链接信息(标题,图片和内容)实现过程详解
2019/09/04 Javascript
layui自己添加图片按钮并点击跳转页面的例子
2019/09/14 Javascript
Weex开发之WEEX-EROS开发踩坑(小结)
2019/10/16 Javascript
vue请求数据的三种方式
2020/03/04 Javascript
跟老齐学Python之使用Python查询更新数据库
2014/11/25 Python
python 2.7.14安装图文教程
2018/04/08 Python
Python之inspect模块实现获取加载模块路径的方法
2018/10/16 Python
python的set处理二维数组转一维数组的方法示例
2019/05/31 Python
详解Python中打乱列表顺序random.shuffle()的使用方法
2019/11/11 Python
Python通过2种方法输出带颜色字体
2020/03/02 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
技校生自我鉴定
2013/12/08 职场文书
银行实习鉴定
2013/12/13 职场文书
关于礼仪的演讲稿
2014/01/04 职场文书
财产公证书样本
2014/04/04 职场文书
篮球比赛策划方案
2014/06/05 职场文书
会计求职自荐信
2015/03/26 职场文书
广播体操比赛主持词
2015/06/29 职场文书