def menu():
#首先定义功能列表函数menu()
print(" 名片管理系统 V1.0 ")
print("1:增加新用户")
print("2:删除新用户")
print("3:修改用户名")
print("4:查询用户名")
print("5:显示所有用户")
print("6:保存到文件")
print("7:退出本程序")
# 定义空列表存储用户信息
users = []
def add():
#定义追加新用户信息函数
new_info = {}
new_info['name'] = input("请输入你要增加的姓名:\n")
new_info['QQ'] = input("请输入你要增加的QQ:\n")
new_info["weixin"] = input("请输入你要增加的微信:\n")
new_info["address"] = input("请输入你要增加的住址:\n")
# 使用append方法追加字典元素到列表
users.append(new_info)
print("\n")
# users.append(name)
print(users)
#使用死循环 让程序不自动停止
def deluser():
name = input("请输入你要删除的姓名:\n")
count = 1
# if name in users.name:
for temp in users:
if temp['name'] == name:
count += 1
users.remove(temp)
print("删除后的列表为:%s" % users)
break
if (count == 1):
print("没有该用户")
def update():
count = 1
name = input("请输入你要更改的姓名:\n")
for temp in users:
if temp['name'] == name:
count += 1
after_name = input("请输入你更改后的名字\n")
after_qq = input("请输入你更改后的QQ\n")
after_weixin = input("请输入你更改后的名微信\n")
after_address = input("请输入你更改后的地址\n")
temp['name'] = after_name
temp['QQ'] = after_qq
temp['weixin'] = after_weixin
temp['address'] = after_address
print("更改后的列表为:%s" % users)
if count == 1:
print("没有该用户。")
def findName():
count = 1
find_name = input("请输入查询的名字")
for temp in users:
if temp['name'] == find_name:
count += 1
print("姓名:%s QQ:%s 微信:%s 住址:%s"%(temp['name'],temp['QQ'],temp['weixin'],temp['address']))
if count == 1:
print("么有该用户")
def show():
print("姓名\tQQ\t微信\t住址\t")
for temp in users:
print("%s\t %s\t%s\t %s" % (temp['name'], temp['QQ'], temp['weixin'], temp['address']))
def saveToFile():
f = open("userinfo.data","w")
f.write(str(users))
f.close()
def loadFile():
global users
try:
f = open("userinfo.data","r")
users = eval(f.read())
f.close()
except Exception:
pass def main():
loadFile()
menu()
while 1:
num = int(input("请输入操作序号:\n"))
if num == 1: # 追加新用户信息
add()
elif num == 2: # 删除指定指定用户信息
deluser()
elif num == 3: # 更改指定用户信息
update()
elif num == 4: #查询指定用户信息
findName()
elif num == 5: # 展示所有用户信息
show()
elif num ==6:
saveToFile()
elif num == 7:
break
if __name__ == "__main__":
main()

python3实现名片管理系统(文件版)的更多相关文章

  1. day 5 名片管理系统-文件版

    1.添加__name__ == '__main__' if __name__ == "__main__": #添加__name__变量 #调用主函数 main() 2.添加6功能, ...

  2. day 4 名片管理系统 -函数版

    修改没有用函数的程序 具有独立功能的代码块 源程序 #1.打印功能信息 print("*"*50) print("\t名片管理系统 V3\t") print(& ...

  3. python案例:实现一个函数版的名片管理系统

    本案例使用了自定义函数以及对字符串的常见操作.判断语句和循环语句等知识. 要求 必须使用自定义函数,完成对程序的模块化. 名片信息至少包括:姓名.电话.住址. 必须完成的功能:增.删.改.查.退出. ...

  4. Python基础综合运用——搭建名片管理系统

    综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ************ ...

  5. python基础提高演练(名片管理系统的开发)

    综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 1. 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ********* ...

  6. python名片管理系统V2

    主程序: #! /usr/bin env python3 # -*- coding: utf-8 -*- # 项目三: # 1.要求:编写一个名片管理系统,功能如下: # 用户输入相对应的指令,实现对 ...

  7. 蓝点通用管理系统V13版发布了!

    蓝点通用管理系统13版已发布! 重磅新功能:系统的通知和提醒功能,增加微信方式,微信通知.微信查询数据.微信拍照上传....... 蓝点的客户管理系统.进销存管理系统.产品管理系统.工作流管理系统.投 ...

  8. Python-控制台实现简单的名片管理系统

    通过Python开发一个基于控制台的名片管理系统,具体看下图以及相关代码. cards_main.py文件中提供程序的入口 import cards_toolslx while True: # TOD ...

  9. day7 地址 名片管理系统

    1 无限循环  (while  True)   break 退出     人为设计的 ,并且有退除的出口      死循环 bug  错误 2.引用   数字型

随机推荐

  1. day20200912

    连杆通过运动副相对于啮合连杆运动 ! 运动副: 旋转副:仅旋转 滑动副:仅沿直线滑动 柱面副:可旋转可沿直线滑动 其他: 可以设置上限.下限 3D接触 驱动: 简谐驱动 函数驱动 运动函数驱动

  2. OOP第三次总结Blog

    1. 前言 相比于前一次Blog题目集,此次七八九题目集偏重于类的继承.多态性使用方法以及接口的应用;在设计层面,强调模式复用,不断的迭代,若前期设计不合理,则后续的题目增加新的功能(即可扩展性)将会 ...

  3. jvm面试常提的问题

    1.JVM如何加载一个类的过程,双亲委派模型中有哪些方法 类加载过程:加载.验证(验证阶段作用是保证Class文件的字节流包含的信息符合JVM规范,不会给JVM造成危害).准备(准备阶段为变量分配内存 ...

  4. Java IO学习笔记八:Netty入门

    作者:Grey 原文地址:Java IO学习笔记八:Netty入门 多路复用多线程方式还是有点麻烦,Netty帮我们做了封装,大大简化了编码的复杂度,接下来熟悉一下netty的基本使用. Netty+ ...

  5. 解决两个相邻的span,或者input和button中间有间隙,在css中还看不到

    <span id="time"></span><span id="second"></span> <inp ...

  6. 20204107 孙嘉临《Python程序设计》实验三报告

    课程:<Python程序设计>班级: 2041姓名: 孙嘉临学号: 20204107实验教师:王志强实验日期:2020年5月24日必修/选修: 公选课## 1.实验内容创建服务端和客户端, ...

  7. POJ 1654 Area 多边形面积 G++会WA

    #include<stdio.h> #include<algorithm> #include <cstring> using namespace std; type ...

  8. 8 shell if else

    if 语句的判断条件,从本质上讲,判断的就是命令的退出状态. 语句 语句格式 同一行书写 注意点 用例1 用例2 if 语句 if  conditionthen  statement(s)fi if  ...

  9. 2020 DJBCTF RE wp

    1.anniu 吐槽:浓浓一股杂项的味道,妈的,用xspy和resource har加ida死活搜不到回调函数,淦 下一个灰色按钮克星,直接把灰色的按钮点亮,直接点击就可以出了,软件下载链接:http ...

  10. OpenFlow协议分析

    OpenFlow协议分析实验手册 启动虚拟机mininet 和 控制器 ODL 启动wireshark,在控制器的ens32 网卡抓包 使用mininet创建简单拓扑,并连接控制器,指定交换机为ovs ...