创建一个名片管理系统,实现增、删、改、查、四项功能

listcard = []
while True:
print('**********欢迎来到名片管理系统**********')
print(' 1.查看名片')
print(' 2.创建名片')
print(' 3.修改名片')
print(' 4.删除名片')
print(' 5.退出名片')
print('*' * )
choose = input('请选择:').strip()
# 查看
if choose == '':
if listcard:
i =
while i < len(listcard):
print('%s--姓名:%s 年龄:%s 电话:%s' % (i+, listcard[i]['name'], listcard[i]['age'], listcard[i]['phone']))
i +=
else:
print('没有信息!')
# 增加
elif choose == '':
new_name = input('name:').strip()
new_age = input('age:').strip()
new_phone = input('phone:').strip()
if new_name and new_age and new_phone:
info = {}.fromkeys(('name', 'age', 'phone'), None)
info['name'] = new_name
info['age'] = new_age
info['phone'] = new_phone
listcard.extend([info])
print('名片创建成功!')
else:
print('请输入相应的信息!') # 删除
elif choose == '':
if listcard:
i =
while i < len(listcard):
print('%s--姓名:%s|年龄:%s|phone:%s' % (i+, listcard[i]['name'], listcard[i]['age'], listcard[i]['phone']))
i +=
res = input('请输入要删除的名片序号:')
listcard.remove(listcard[int(res)-])
print('删除成功!') # 修改
elif choose == '':
i =
while i < len(listcard):
print(
'%s--姓名:%s|年龄:%s|phone:%s' % (i, listcard[i]['name'], listcard[i]['age'], listcard[i]['phone']))
i +=
res = input('请输入要修改的名片序号:')
print('请输入修改的内容:')
edit_name = input('姓名(回车不修改):').strip()
edit_age = input('年纪(回车不修改):').strip()
edit_phone = input('电话(回车不修改):').strip()
if edit_name:
listcard[int(res)-]['name'] = edit_name
if edit_age:
listcard[int(res)-]['age'] = edit_age
if edit_phone:
listcard[int(res)-]['phone'] = edit_phone
print('修改成功!') #退出
elif choose == '':
print('谢谢使用!')
break
else:
print('请输入正确选项!')

可以根据名字查询,删除,修改的名片管理系统

lt=[]
while True:
print('**********欢迎来到名片管理系统**********')
print(' a:新建 b:修改 c:删除 d:查询 e:退出')
print('*' * )
ks = input('请输入要进行的操作:') # 增
if ks == 'a':
info = {}.fromkeys(('name', 'age', 'phone'), None)
k = len(lt)
lt.extend([info])
lt[k]['name'] = input('name:')
lt[k]['age'] = input('age:')
lt[k]['phone'] = input('phone:')
print('名片已经添加!')
for i, j in lt[k].items():
print(i, ':', j) # 改
elif ks == 'b':
key=input('要修改的名字:')
i=
while i < len(lt):
if key in lt[i].values():
lt[i]['name'] = input('name:')
lt[i]['age'] = input('age:')
lt[i]['phone'] = input('phone:')
print('名片已经修改!')
else:
print('没有该名片!')
i += # 删
elif ks == 'c':
key=input('要删除的名字:')
i=
while i < len(lt):
if key in lt[i].values():
lt[i].clear()
lt.remove(lt[i])
print('名片已经删除!')
else:
print('没有该名片!')
i += # 查
elif ks == 'd':
key=input('要查询的名字:')
i=
while i < len(lt):
if key in lt[i].values():
for k, v in lt[i].items():
print(k, ':', v)
print('')
else:
print('没有该名片!')
i += # 退出
elif ks == 'e':
print('谢谢使用!')
break
else:
print('请输入正确选项!')

python程序—名片管理系统的更多相关文章

  1. Python练习 ——名片管理系统(增添,删除,查找,修改)

    需要注意的一个地方是,如果你用的版本是3.6的,那么下面的用到的所有从外界接收信息所用到的input()用input()就行了,如果是2.7版本,那么如果接收的是字符串要用raw_input()(将接 ...

  2. Python:名片管理系统

    字符串和列表学完, 自己试着写了一个非常简单的名片管理系统, 新萌尝试, 大佬们不要喷, 修改名片的功能我偷了个懒, 因为我不知道怎么通过定义下标,然后通过下标来修改列表内的字符串 我的思路是,把用户 ...

  3. Python:名片管理系统(增加登录功能后出现问题,求教)

    我将一个简单的名片管理系统定义成了函数.. 2层. 一个登录界面: 一个名片管理系统使用界面: 逻辑是:登录成功=>跳入名片系统使用界面,同时,跳出登录界面,给出欢迎使用,程序结束. 此时问题来 ...

  4. python简单名片管理系统

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

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

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

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

  7. python名片管理系统V2

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

  8. python名片管理系统

    1.代码: (1)主程序 #!/usr/bin/env python # -*- coding: UTF-8 -*- import cards_tools # 无限循环,由用户主动决定什么时候退出循环 ...

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

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

随机推荐

  1. Python---Models 模型

    #Models 模型 数据结构 + 算法 = 程序 ---> URL ---> VIEW ---> Temple ---> DB:分类---关系 Teacher   Stude ...

  2. Openshift 错误解决 "修改docker cgroup driver"

    一.Openshift 错误解决 "修改docker cgroup driver" 一.错误如下 failed to run Kubelet: failed to create k ...

  3. 【Nginx】-NO.141.Nginx.1 -【Nginx】

    Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...

  4. 获取地址栏url

    Url=${window.location.protocol}//${window.location.host}${window.location.pathname}

  5. Android 崩溃优化

    Android 两种崩溃 android崩溃分为Java崩溃和Nativie崩溃 java崩溃就是java代码中,出现未捕获的异常,导致程序异常退出 Native崩溃一般是因为在Native代码中访问 ...

  6. 细说@Html.ActionLink()的用法(转)

    细说@Html.ActionLink()的用法   一.@Html.ActionLink()概述 在MVC的Rasor视图引擎中,微软采用一种全新的方式来表示从前的超链接方式,它代替了从前的繁杂的超链 ...

  7. 团队项目第一篇——NABCD

    团队名称: 团队项目名称: 团队口号: N(Need)需求: 现如今数据越来越零碎化,繁杂化,身为在校大学生的我们也因此对于时间的利用率也相应减少,为了时间的充分利用,减少在冗杂的信息中耽误的时间,充 ...

  8. 爬虫----scrapy账号登录豆瓣,并且重定向到电影界面,获取界面信息

    Request:这是url重定向 FormRequest:这是表单提交,就是登录界面时,输入账号.密码,点击登陆的过程 # -*- coding: utf-8 -*-import scrapyfrom ...

  9. Oracle exp和expdp对数据进行备份

    以下给出两个示例,详细内容需要查阅手册: exp system OWNER=ZLTX FILE=ZLTX20190123.DMP expdp system DUMPFILE=ZLTX20190123. ...

  10. Promise的那些事儿

    在JavaScript中,异步操作非常多见,然而在Promise之前,我们是在类似以下的做法中处理多重异步回调,每一层里都要调另一个异步函数,形成了所谓的"回调地狱", Promi ...