python名片管理系统开发


Posted in Python onJune 18, 2020

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

利用面向对象的开发方法,开发名片管理系统,要求用文件存储数据

#定义名片类
class Card(object):
 def __init__(self,name,phone,QQ,Email):
  self.name=name
  self.phone=phone
  self.QQ=QQ
  self.Email=Email

 def __str__(self):
  return f"{self.name},{self.phone},{self.QQ},{self.Email}"
#定义名片管理类
class Card_mannager(object):
 def __init__(self):
  self.card_list=[]
#新建名片
 def new_card(self):
  name=input("请输入姓名:")
  phone=input("请输入电话:")
  QQ=input("请输入QQ:")
  Email=input("请输入Email:")
  card=Card(name,phone,QQ,Email)
  self.card_list.append(card)
#显示名片
 def show_card(self):
  if len(self.card_list)>0:
   print("所以名片信息如下:")
   print("")
   for i in self.card_list:
    print("姓名:"+i.name,"电话:"+i.phone,"QQ:"+i.QQ,"Email:"+i.Email)
  else:
   print("没有该联系人信息!")
 #查找名片
 def search_card(self):
  name=input("请输入你要查找的姓名:")
  for i in self.card_list:
   if i.name==name:
    print("查找成功!")
    print("姓名:"+i.name,"电话:"+i.phone,"QQ:"+i.QQ,"Email:"+i.Email)
    print(" ")
    print("-"*80)
    print("1:删除")
    print("2:修改")
    print("0:返回上一级菜单")
    action=int(input("请选择操作功能:"))
    while True:
     if action == 1:
      self.card_list.remove(i)
      self.save_card()
      print("删除成功!")
      break
     elif action==2:
      i.name=input("请输入姓名:")
      i.phone=input("请输入电话:")
      i.QQ=input("请输入QQ:")
      i.Email=input("请输入Email:")
      self.save_card()
      print("修改成功!")
      break
     elif action==0:
      break
     else:
      print("输入有误,请重新输入!")
      break
    break
  else:
   print("没有该联系人信息!")
#保存名片
 def save_card(self):
  flie = open("data.data","w")
  cardlist=[i.__dict__ for i in self.card_list]
  flie.write(str(cardlist))
  flie.close()
#加载名片
 def load_card(self):
  try:
   flie = open("data.data","r")
  except:
   flie = open("data.data","w")
  else:
   data=eval(flie.read())
   if len(data)>0:
    for i in data:
     card=Card(i["name"],i["phone"],i["QQ"],i["Email"])
     self.card_list.append(card)
  finally:
   flie.close()
#菜单
 @staticmethod
 def show_menu():
  print("*"*80)
  print("欢迎使用【名片管理系统】V2.0")
  print()
  print("1.新建名片")
  print("2.显示全部名片")
  print("3.查询名片")
  print()
  print("0.退出系统")
  print("*"*80)

 def run(self):
  self.load_card()
  while True:
   self.show_menu()
   action=int(input("请选择操作功能:"))
   print("您的选择是:{0}".format(action))
   if action==1:
    self.new_card()
    self.save_card()
    print("添加成功!")
   elif action==2:
    self.show_card()
   elif action==3:
    self.search_card()
   elif action==0:
    print("欢迎再次使用!")
    break
   else:
    print("输入有误,请重新输入!")

if __name__=="__main__":
 A=Card_mannager()
 A.run()

更多学习资料请关注专题《管理系统开发》。

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

Python 相关文章推荐
详解在Python程序中使用Cookie的教程
Apr 30 Python
浅谈python jieba分词模块的基本用法
Nov 09 Python
对Python中range()函数和list的比较
Apr 19 Python
python发送邮件脚本
May 22 Python
对python requests发送json格式数据的实例详解
Dec 19 Python
Python GUI编程完整示例
Apr 04 Python
python+opencv像素的加减和加权操作的实现
Jul 14 Python
python 处理微信对账单数据的实例代码
Jul 19 Python
Djang的model创建的字段和参数详解
Jul 27 Python
Python tkinter制作单机五子棋游戏
Sep 14 Python
python BeautifulSoup库的安装与使用
Dec 17 Python
PyMongo 查询数据的实现
Jun 28 Python
一文轻松掌握python语言命名规范规则
Jun 18 #Python
Python学习之路之pycharm的第一个项目搭建过程
Jun 18 #Python
基于PyTorch的permute和reshape/view的区别介绍
Jun 18 #Python
Python Switch Case三种实现方法代码实例
Jun 18 #Python
Python3开发环境搭建详细教程
Jun 18 #Python
Python collections.defaultdict模块用法详解
Jun 18 #Python
python实现批量命名照片
Jun 18 #Python
You might like
PHP读取数据库并按照中文名称进行排序实现代码
2013/01/29 PHP
从零开始学YII2框架(六)高级应用程序模板
2014/08/20 PHP
PHP判断一个变量是否为整数、正整数的方法示例
2019/09/11 PHP
基于jquery的finkyUI插件与Ajax实现页面数据加载功能
2010/12/03 Javascript
JS 使用for循环遍历子节点查找元素
2014/09/06 Javascript
利用yarn实现一个webpack+react种子
2016/10/25 Javascript
详解JS中的快速排序与冒泡
2017/01/10 Javascript
微信小程序商城项目之侧栏分类效果(1)
2017/04/17 Javascript
mescroll.js上拉加载下拉刷新组件使用详解
2017/11/13 Javascript
vue实现word,pdf文件的导出功能
2018/07/31 Javascript
Angular2中监听数据更新的方法
2018/08/31 Javascript
vue动态合并单元格并添加小计合计功能示例
2020/11/26 Vue.js
[02:28]DOTA2英雄基础教程 灰烬之灵
2013/12/19 DOTA
[51:50]完美世界DOTA2联赛 Magma vs GXR 第一场 11.07
2020/11/10 DOTA
Python使用htpasswd实现基本认证授权的例子
2014/06/10 Python
跟老齐学Python之Python文档
2014/10/10 Python
python实现将内容分行输出
2015/11/05 Python
Python简单获取自身外网IP的方法
2016/09/18 Python
Python数据可视化库seaborn的使用总结
2019/01/15 Python
pyqt5 QProgressBar清空进度条的实例
2019/06/21 Python
python实现动态数组的示例代码
2019/07/15 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
html5移动端自适应布局的实现
2020/04/15 HTML / CSS
日本最佳原创设计品牌:Felissimo(芬理希梦)
2019/03/19 全球购物
采购主管的岗位职责
2013/12/17 职场文书
升旗仪式演讲稿
2014/05/08 职场文书
中药学专业毕业生推荐信
2014/07/10 职场文书
教师对照四风自我剖析材料
2014/09/30 职场文书
个人批评与自我批评范文
2014/10/17 职场文书
英文道歉信
2015/01/20 职场文书
负责培养人意见
2015/06/05 职场文书
关于职业道德的心得体会
2016/01/18 职场文书
职场新人刚入职工作总结该怎么写?
2019/05/15 职场文书
教你怎么用Python实现多路径迷宫
2021/04/29 Python
Java比较两个对象中全部属性值是否相等的方法
2021/08/07 Java/Android
《帝国时代4》赛季预告 新增内容编译器可创造地图
2022/04/03 其他游戏