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的Django框架实现事务交易管理的教程
Apr 20 Python
python实现快速排序的示例(二分法思想)
Mar 12 Python
python3+PyQt5实现柱状图
Apr 24 Python
Python实现的IP端口扫描工具类示例
Feb 15 Python
Python简单处理坐标排序问题示例
Jul 11 Python
Python操作Mongodb数据库的方法小结
Sep 10 Python
Pandas-Cookbook 时间戳处理方式
Dec 07 Python
Python编程快速上手——疯狂填词程序实现方法分析
Feb 29 Python
Python中的xlrd模块使用原理解析
May 21 Python
详解Python中的Lock和Rlock
Jan 26 Python
python ansible自动化运维工具执行流程
Jun 24 Python
python实现会员信息管理系统(List)
Mar 18 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
mysql下创建字段并设置主键的php代码
2010/05/16 PHP
PHP+JS+rsa数据加密传输实现代码
2011/03/23 PHP
php array_push()数组函数:将一个或多个单元压入数组的末尾(入栈)
2011/07/12 PHP
PHP生成唯一订单号
2015/07/05 PHP
新浪中用来显示flash的函数
2007/04/02 Javascript
jquery创建div 实现代码
2009/04/27 Javascript
jQuery 图像裁剪插件Jcrop的简单使用
2009/05/22 Javascript
关于jQuery参考实例2.0 用jQuery选择元素
2013/04/07 Javascript
js算法中的排序、数组去重详细概述
2013/10/14 Javascript
一个jquery实现的不错的多行文字图片滚动效果
2014/09/28 Javascript
node.js中的fs.write方法使用说明
2014/12/15 Javascript
jQuery中first()方法用法实例
2015/01/06 Javascript
js跨域请求的5中解决方式
2015/07/02 Javascript
JavaScrip常见的一些算法总结
2015/12/28 Javascript
JQuery用户名校验的具体实现
2016/03/18 Javascript
JavaScript面试题大全(推荐)
2016/09/22 Javascript
Jil,高效的json序列化和反序列化库
2017/02/15 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
微信小程序 实例开发总结
2017/04/26 Javascript
element el-input directive数字进行控制
2018/10/11 Javascript
ES6中的迭代器、Generator函数及Generator函数的异步操作方法
2019/05/12 Javascript
vue框架制作购物车小球动画效果实例代码
2019/09/26 Javascript
探索浏览器页面关闭window.close()的使用详解
2020/08/21 Javascript
基于原生JS封装的Modal对话框插件的示例代码
2020/09/09 Javascript
[02:13] 完美世界DOTA2联赛PWL DAY5集锦
2020/11/03 DOTA
python 将字符串转换成字典dict的各种方式总结
2018/03/23 Python
Django rest framework实现分页的示例
2018/05/24 Python
Django ORM 自定义 char 类型字段解析
2019/08/09 Python
如何使用python写截屏小工具
2020/09/29 Python
python 获取谷歌浏览器保存的密码
2021/01/06 Python
Fnac西班牙官网:法国文化和电子产品零售商
2021/03/14 全球购物
竞选演讲稿范文
2013/12/28 职场文书
高中生职业规划范文
2014/03/09 职场文书
大学生学习十八届五中全会精神心得体会
2016/01/05 职场文书
只用20行Python代码实现屏幕录制功能
2021/06/02 Python
Python实现视频自动打码的示例代码
2022/04/08 Python