名片管理系统python版


Posted in Python onJanuary 11, 2018

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

import os
list_all = []


def page():
 """输出主页面"""
 print("*" * 30)
 print("欢迎使用[名片管理系统]v2.0")
 print()
 print("1.新建名片")
 print("2.查看全部")
 print("3.查询名片")
 print("4.保存信息")
 print()
 print("0.退出系统")
 print("=" * 30)


def new_cards():
 """接收用户输入的信息保存至字典"""
 dict_1 = {"name": input("姓名:"),
  "age": input("年龄:"),
  "phone": input("电话:"),
  "email": input("邮箱:")}
 # 将字典添加至列表
 list_all.append(dict_1)


def check_all():
 """将所有的字典信息进行打印"""
 if len(list_all) > 0:
 print("姓名\t\t年龄\t\t电话\t\t邮箱")
 for i in list_all:
  print("%s\t\t%s\t\t%s\t\t%s" % (i["name"], i["age"],
      i["phone"], i["email"]))
 else:
  print("还没有任何信息")


def check_cards():
 """查询名片"""
 user = input("请输入要查询的姓名:")
 for i in list_all: # 遍历全局列表,将存入的字典依次取出
 if i['name'] == user: # 如果字典的值跟用户搜索的值相同打印字典
  print("姓名\t\t年龄\t\t电话\t\t邮箱")
  print("%s\t\t%s\t\t%s\t\t%s" % (i["name"], i["age"],
      i["phone"], i["email"]))
  revise_cards(i)
 else:
  print("没有查询到您搜索的信息")


def revise_cards(dict_1):
 """修改名片,接收之前已经查到的字典"""
 while True:
 user_choor = input("1.修改名片 2.删除名片 0.返回主菜单")
 if user_choor == "1": # 如果用户输入1执行修改功能
  print("修改名片,注:修改直接输入修改内容,回车不修改")
  dict_1["name"] = revise(dict_1["name"], input("姓名"))
  dict_1["age"] = revise(dict_1["age"], input("年龄"))
  dict_1["phone"] = revise(dict_1["phone"], input("电话"))
  dict_1["email"] = revise(dict_1["email"], input("邮箱"))
  print("修改成功")
  break
 # laturn
 elif user_choor == "2": # 如果输入2删除字典
  list_all.remove(dict_1)
  print("删除名片成功")
  break
 elif user_choor == "0":
  break
 else:
  print("输入错误请重新输入")


def revise(old, new):
 """实现回车不修改的功能"""
 if len(new) <= 0:

 return old
 else:
 return new


def save_dir():
 """将文件保存至指定文件"""
 a = open("123.xlsx", "w")
 a.write(str(list_all))
 a.close()
 print("保存成功")


def read_dir():
 """读取文件"""
 if os.path.exists("123.data"):
 a = open("123.data", "r")
 b = eval(a.read())
 global list_all
 list_all = b
 a.close()
import cards_tools
# 读取文件
cards_tools.read_dir()
while True:
 cards_tools.page()
 user_input = input("请选择您要执行的操作")
 if user_input == "1":
 print("即将执行:新建名片")
 cards_tools.new_cards()
 elif user_input == "2":
 print("即将执行:查看全部")
 cards_tools.check_all()
 elif user_input == "3":
 print("即将执行:查询名片")
 cards_tools.check_cards()
 elif user_input == "4":
 print("即将执行:保存信息")
 cards_tools.save_dir()
 elif user_input == "0":
 print("欢迎下次使用[名片管理系统]")
 exit()
 else:
 print("你的输入有误,请重新输入")

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

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

Python 相关文章推荐
python数据类型_字符串常用操作(详解)
May 30 Python
Python使用functools实现注解同步方法
Feb 06 Python
python实现将一个数组逆序输出的方法
Jun 25 Python
python 3.6.4 安装配置方法图文教程
Sep 18 Python
Python实现的特征提取操作示例
Dec 03 Python
Python selenium根据class定位页面元素的方法
Feb 26 Python
在python3中实现更新界面
Feb 21 Python
Python tkinter实现简单加法计算器代码实例
May 13 Python
在keras里实现自定义上采样层
Jun 28 Python
Python 用__new__方法实现单例的操作
Dec 11 Python
Python3中的tuple函数知识点讲解
Jan 03 Python
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
Jun 05 Python
Python学生成绩管理系统简洁版
Apr 05 #Python
Python实现学校管理系统
Jan 11 #Python
Python实现GUI学生信息管理系统
Apr 05 #Python
使用python 爬虫抓站的一些技巧总结
Jan 10 #Python
python版学生管理系统
Jan 10 #Python
python实现用户管理系统
Jan 10 #Python
python的Tqdm模块的使用
Jan 10 #Python
You might like
PHP 截取字符串专题集合
2010/08/19 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
2013/08/15 PHP
php中的比较运算符详解
2013/10/28 PHP
PHP+jQuery 注册模块开发详解
2014/10/14 PHP
php采集中国代理服务器网的方法
2015/06/16 PHP
Gird事件机制初级读本
2007/03/10 Javascript
jQuery的强大选择器小结
2009/12/27 Javascript
ExtJS Store的数据访问与更新问题
2010/04/28 Javascript
js Array操作的最简短最容易理解方法
2013/12/09 Javascript
JavaScript Split()方法
2015/12/18 Javascript
jQuery动画效果图片轮播特效
2016/01/12 Javascript
jQuery Mobile开发中日期插件Mobiscroll使用说明
2016/03/02 Javascript
jQuery的层级查找方式分析
2016/06/16 Javascript
js轮播图代码分享
2016/07/14 Javascript
jQuery事件处理的特征(事件命名机制)
2016/08/23 Javascript
浅谈jquery.form.js的ajaxSubmit和ajaxForm的使用
2016/09/09 Javascript
jQuery简介_动力节点Java学院整理
2017/07/04 jQuery
angular实现spa单页面应用实例
2017/07/10 Javascript
js弹性势能动画之抛物线运动实例详解
2017/07/27 Javascript
JS实现带导航城市列表以及输入搜索功能
2018/01/04 Javascript
浅谈PDF.js使用心得
2018/06/07 Javascript
详解React中setState回调函数
2018/06/14 Javascript
Vue2.X 通过AJAX动态更新数据
2018/07/17 Javascript
详解Angular6 热加载配置方案
2018/08/18 Javascript
Python使用Socket(Https)Post登录百度的实现代码
2012/05/18 Python
在Django框架中伪造捕捉到的URLconf值的方法
2015/07/18 Python
python中format()函数的简单使用教程
2018/03/14 Python
pytorch 实现cross entropy损失函数计算方式
2020/01/02 Python
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
会走动的图形html5时钟示例
2014/04/27 HTML / CSS
关于美容院的活动方案
2014/08/14 职场文书
国庆促销活动总结
2014/08/29 职场文书
优秀教师自我评价范文
2014/09/27 职场文书
python编写函数注意事项总结
2021/03/29 Python
详解Python为什么不用设计模式
2021/06/24 Python
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
2021/06/26 Java/Android