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中for循环的使用方法
May 14 Python
Python实现递归遍历文件夹并删除文件
Apr 18 Python
Python简单计算数组元素平均值的方法示例
Dec 26 Python
Python实现连接postgresql数据库的方法分析
Dec 27 Python
python3安装pip3(install pip3 for python 3.x)
Apr 03 Python
pandas DataFrame实现几列数据合并成为新的一列方法
Jun 08 Python
Python数据分析:手把手教你用Pandas生成可视化图表的教程
Dec 15 Python
Python实现爬取马云的微博功能示例
Feb 16 Python
python的sorted用法详解
Jun 25 Python
python  文件的基本操作 菜中菜功能的实例代码
Jul 17 Python
在win64上使用bypy进行百度网盘文件上传功能
Jan 02 Python
使用wxpy实现自动发送微信消息功能
Feb 28 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翻页类
2009/06/01 PHP
php目录操作实例代码
2014/02/21 PHP
php格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
2016/06/28 PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
2016/12/29 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
2018/05/23 PHP
Div自动滚动到末尾的代码
2008/10/26 Javascript
[Web]防止用户复制页面内容和另存页面的方法
2009/02/06 Javascript
javascript 构造函数强制调用经验总结
2012/12/02 Javascript
jquery右下角弹出提示框示例代码
2013/10/08 Javascript
使用jQuery时Form表单元素ID和name命名大忌
2014/03/06 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
JS正则表达式修饰符global(/g)用法分析
2016/12/27 Javascript
Javascript 实现全屏滚动实例代码
2016/12/31 Javascript
微信小程序页面间通信的5种方式
2017/03/31 Javascript
JavaScript与Java正则表达式写法的区别介绍
2017/08/15 Javascript
详解vue-cli本地环境API代理设置和解决跨域
2017/09/05 Javascript
jQuery实现可兼容IE6的滚动监听功能
2017/09/20 jQuery
vue 实现axios拦截、页面跳转和token 验证
2018/07/17 Javascript
JS中间件设计模式的深入探讨与实例分析
2020/04/11 Javascript
[02:11]2014DOTA2 TI专访VG战队Fenrir:队伍气氛良好
2014/07/11 DOTA
python3使用urllib模块制作网络爬虫
2016/04/08 Python
利用Python进行数据可视化常见的9种方法!超实用!
2018/07/11 Python
python实现遍历文件夹图片并重命名
2020/03/23 Python
python中如何打包用户自定义模块
2020/09/23 Python
老板电器官方购物商城:老板油烟机、燃气灶、消毒柜、电烤箱
2018/05/30 全球购物
《菜园里》教学反思
2014/04/17 职场文书
售房委托书
2014/08/30 职场文书
教师个人师德工作总结2015
2015/05/12 职场文书
劳动仲裁撤诉申请书
2015/05/18 职场文书
2016猴年春节问候语
2015/11/11 职场文书
HTML+CSS+JS实现图片的瀑布流布局的示例代码
2021/04/22 HTML / CSS
Python 内置函数速查表一览
2021/06/02 Python
Python面向对象之内置函数相关知识总结
2021/06/24 Python
Python实现制作销售数据可视化看板详解
2021/11/27 Python
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
2022/03/03 Python