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安装Imaging报错:The _imaging C module is not installed问题解决方法
Aug 22 Python
Python map和reduce函数用法示例
Feb 26 Python
python实现的简单文本类游戏实例
Apr 28 Python
python定向爬取淘宝商品价格
Feb 27 Python
Python 数据处理库 pandas 入门教程基本操作
Apr 19 Python
如何安装并使用conda指令管理python环境
Jul 10 Python
python中dict()的高级用法实现
Nov 13 Python
Python3并发写文件与Python对比
Nov 20 Python
keras中的loss、optimizer、metrics用法
Jun 15 Python
Numpy 多维数据数组的实现
Jun 18 Python
Python程序慢的重要原因
Sep 04 Python
OpenCV-Python实现轮廓拟合
Jun 08 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格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
Yii实现MySQL多数据库和读写分离实例分析
2014/12/03 PHP
php第一次无法获取cookie问题处理
2014/12/15 PHP
php一个文件搞定微信jssdk配置
2016/12/12 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
Laravel 简单实现Ajax滚动加载示例
2019/10/22 PHP
JavaScript面向对象之体会[总结]
2008/11/13 Javascript
javascript 实用的文字链提示框效果
2010/06/30 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
基于Jquery+div+css实现弹出登录窗口(代码超简单)
2015/10/27 Javascript
学习JavaScript正则表达式
2015/11/13 Javascript
不间断循环滚动效果的实例代码(必看篇)
2016/10/08 Javascript
利用Chrome DevTools直接调试Node.js和JavaScript的方法详解(并行)
2017/02/16 Javascript
JS判断两个对象内容是否相等的方法示例
2017/04/10 Javascript
利用n工具轻松管理Node.js的版本
2017/04/21 Javascript
Vue-cli 使用json server在本地模拟请求数据的示例代码
2017/11/02 Javascript
javascript字体颜色控件的开发 JS实现字体控制
2017/11/27 Javascript
vue异步加载高德地图的实现
2018/06/19 Javascript
JavaScript基于对象方法实现数组去重及排序操作示例
2018/07/10 Javascript
vue柱状进度条图像的完美实现方案
2019/08/26 Javascript
微信小程序实现音乐播放器
2019/11/20 Javascript
Element的el-tree控件后台数据结构的生成以及方法的抽取
2020/03/05 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
2020/04/09 Javascript
windows下Python实现将pdf文件转化为png格式图片的方法
2017/07/21 Python
Python日志模块logging基本用法分析
2018/08/23 Python
python读取文本中的坐标方法
2018/10/14 Python
PyQt5的安装配置过程,将ui文件转为py文件后显示窗口的实例
2019/06/19 Python
Django model update的多种用法介绍
2020/03/28 Python
Python模块future用法原理详解
2020/01/20 Python
Python 使用 PyQt5 开发的关机小工具分享
2020/07/16 Python
使用 css3 transform 属性来变换背景图的方法
2019/05/07 HTML / CSS
W Concept美国:精选全球独立设计师
2017/02/22 全球购物
物理专业大学生职业生涯规划书
2014/02/07 职场文书
院系推荐意见
2015/06/05 职场文书
Sql-Server数据库单表查询 4.3实验课
2021/04/05 SQL Server
javascript进阶篇深拷贝实现的四种方式
2022/07/07 Javascript