python3实现名片管理系统(文件版)
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实现名片管理系统(文件版)的更多相关文章
- day 5 名片管理系统-文件版
1.添加__name__ == '__main__' if __name__ == "__main__": #添加__name__变量 #调用主函数 main() 2.添加6功能, ...
- day 4 名片管理系统 -函数版
修改没有用函数的程序 具有独立功能的代码块 源程序 #1.打印功能信息 print("*"*50) print("\t名片管理系统 V3\t") print(& ...
- python案例:实现一个函数版的名片管理系统
本案例使用了自定义函数以及对字符串的常见操作.判断语句和循环语句等知识. 要求 必须使用自定义函数,完成对程序的模块化. 名片信息至少包括:姓名.电话.住址. 必须完成的功能:增.删.改.查.退出. ...
- Python基础综合运用——搭建名片管理系统
综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ************ ...
- python基础提高演练(名片管理系统的开发)
综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 1. 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ********* ...
- python名片管理系统V2
主程序: #! /usr/bin env python3 # -*- coding: utf-8 -*- # 项目三: # 1.要求:编写一个名片管理系统,功能如下: # 用户输入相对应的指令,实现对 ...
- 蓝点通用管理系统V13版发布了!
蓝点通用管理系统13版已发布! 重磅新功能:系统的通知和提醒功能,增加微信方式,微信通知.微信查询数据.微信拍照上传....... 蓝点的客户管理系统.进销存管理系统.产品管理系统.工作流管理系统.投 ...
- Python-控制台实现简单的名片管理系统
通过Python开发一个基于控制台的名片管理系统,具体看下图以及相关代码. cards_main.py文件中提供程序的入口 import cards_toolslx while True: # TOD ...
- day7 地址 名片管理系统
1 无限循环 (while True) break 退出 人为设计的 ,并且有退除的出口 死循环 bug 错误 2.引用 数字型
随机推荐
- 实验2、Flask模板、表单、视图和重定向示例
实验内容 1. 实验内容 表单功能与页面跳转功 能是Web应用程序的基础功能,学习并使用他们能够更好的完善应用程序的功能.Flask使用了名为Jinja2的模板引擎,该引擎根据用户的交互级别显示应用程 ...
- 【NX二次开发】隐藏、显示对象UF_OBJ_set_blank_status
隐藏.显示对象用UF_OBJ_set_blank_status() 查看对象显示情况用UF_OBJ_ask_display_properties() 效果: 源码: #include "Te ...
- Reactive 理解 SpringBoot 响应式的核心-Reactor
Reactive 理解 SpringBoot 响应式的核心-Reactor bestcoding 2020-02-23 17:26:43 一.前言 关于 响应式 Reactive,前面的两篇文章谈了不 ...
- CSP_J 纪念品题解
题目: 小伟突然获得一种超能力,他知道未来 T 天 N 种纪念品每天的价格.某个纪念品 的价格是指购买一个该纪念品所需的金币数量,以及卖出一个该纪念品换回的金币数量. 每天,小伟可以进行以下两种交易无 ...
- __sync_fetch_and_add函数(Redis源码学习)
__sync_fetch_and_add函数(Redis源码学习) 在学习redis-3.0源码中的sds文件时,看到里面有如下的C代码,之前从未接触过,所以为了全面学习redis源码,追根溯源,学习 ...
- Https:证书生成 .p12 .keyStore 和 .truststore文件理解
当我们需要SSL证书时,可以自动生成SSL证书,但是每个系统都申请一次证书会比较麻烦,所以用到了如下几个文件格式: .p12(PKCS #12) 我们的每一个证书都可以生成一个.p12文件,这个文 ...
- Linux date 获取时间
获取当前日期: ubuser@ubuser-OptiPlex-7010:~$ date +%Y_%m_%d2020_12_16 获取当前时间: ubuser@ubuser-OptiPlex-7010: ...
- linux 生成密钥
p.p1 { margin: 0; font: 16px "Helvetica Neue" } span.s1 { font: 16px ".PingFang SC&qu ...
- php+redis+lua实现分布式锁(转载)
以下是我在工作中用到的类,redis加锁两种方式,解锁为了保证原子性所以只用lua+redis的方式 缺陷:虽然死锁问题解决了,但业务执行时间超过锁有效期还是存在多客户端加锁问题.不过,这个类已经满足 ...
- .NET Core/.NET5/.NET6 开源项目汇总11:WPF组件库1
系列目录 [已更新最新开发文章,点击查看详细] WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Frame ...