python程序—名片管理系统
创建一个名片管理系统,实现增、删、改、查、四项功能
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程序—名片管理系统的更多相关文章
- Python练习 ——名片管理系统(增添,删除,查找,修改)
需要注意的一个地方是,如果你用的版本是3.6的,那么下面的用到的所有从外界接收信息所用到的input()用input()就行了,如果是2.7版本,那么如果接收的是字符串要用raw_input()(将接 ...
- Python:名片管理系统
字符串和列表学完, 自己试着写了一个非常简单的名片管理系统, 新萌尝试, 大佬们不要喷, 修改名片的功能我偷了个懒, 因为我不知道怎么通过定义下标,然后通过下标来修改列表内的字符串 我的思路是,把用户 ...
- Python:名片管理系统(增加登录功能后出现问题,求教)
我将一个简单的名片管理系统定义成了函数.. 2层. 一个登录界面: 一个名片管理系统使用界面: 逻辑是:登录成功=>跳入名片系统使用界面,同时,跳出登录界面,给出欢迎使用,程序结束. 此时问题来 ...
- python简单名片管理系统
- Python基础综合运用——搭建名片管理系统
综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ************ ...
- python基础提高演练(名片管理系统的开发)
综合应用 —— 名片管理系统 目标 综合应用已经学习过的知识点: 变量 流程控制 函数 模块 开发 名片管理系统 系统需求 1. 程序启动,显示名片管理系统欢迎界面,并显示功能菜单 ********* ...
- python名片管理系统V2
主程序: #! /usr/bin env python3 # -*- coding: utf-8 -*- # 项目三: # 1.要求:编写一个名片管理系统,功能如下: # 用户输入相对应的指令,实现对 ...
- python名片管理系统
1.代码: (1)主程序 #!/usr/bin/env python # -*- coding: UTF-8 -*- import cards_tools # 无限循环,由用户主动决定什么时候退出循环 ...
- python案例:实现一个函数版的名片管理系统
本案例使用了自定义函数以及对字符串的常见操作.判断语句和循环语句等知识. 要求 必须使用自定义函数,完成对程序的模块化. 名片信息至少包括:姓名.电话.住址. 必须完成的功能:增.删.改.查.退出. ...
随机推荐
- 流程控制:顺序结构: 代码默认从上到下依次执行 分支结构: 细分在分为如下 循环结构: while .. for ..
# ### 流程控制: ''' 流程: 代码执行的过程 流程控制: 对代码执行的过程进行管控 顺序结构: 代码默认从上到下依次执行 分支结构: 细分在分为如下 循环结构: while .. for . ...
- 时间、日历(time、calendar、datatime)
import time import calendar import datatime #获取代码运行的时间差 start = time.time() end = time.time() print( ...
- Angular7上手体验
准备工具 Node.js Angular requires Node.js version 8.x or 10.x. 查看当前你的node版本可以在CMD中输入 node -v npm -v 开发工具 ...
- OO第二单元总结(多线程的电梯调度)
经过第一单元作业的训练,在做第二单元的作业的时候,要更加的有条理.但是第二次作业多线程的运行,带来了更多的运行的不确定性.呈现出来就是程序会出现由于线程安全问题带来的不可复现的bug.本单元的作业也让 ...
- 22.C# 事件
1.事件的含义 事件和异常类似,它们都是由对象引发,我们可以提供代码处理它们.不同的是事件并没有使用try ..catch这样的代码来处理,而是要订阅事件,订阅的含义是提供一段事件处理代码,在事件发送 ...
- js选中变色,不选中鼠标放上变色
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...
- EXCEL对比在职员工与离职员工
EXCEL 在B1中 填写这个 =VLOOKUP(A1,C:C,1,0) 然后往下拉 只要有出现#N/A 说明已经离职了 公司需要
- 旷视研究院Detection组负责人
http://www.skicyyu.org/ https://zhuanlan.zhihu.com/p/61910297 俞刚,旷视研究院Detection组负责人.2014年博士毕业于新加坡南洋理 ...
- jupyter notebook + frp 实现内容穿透
服务器上找到frps.ini 配置如下 [common] bind_port = 7000 vhost_http_port = 8890 要穿透的笔记本的frpc.ini配置 [common] ser ...
- 读HashMap 源码(jdk11)的见解
如果想系统详细的了解HashMap请移步各大佬博客.这篇文章只是个人的一些见解. 数组+链表 或 数组+红黑树.这种说法感觉有迷惑性. 之前看博客都说 HashMap 的存储是数组+链表(jdk6), ...