您的位置:首页 > 编程语言 > Python开发

python---名片管理(并对名片进行增、删、改、查、功能的实现)

2017-08-05 23:30 639 查看
调用函数,采用遍历来进行查找,删除,更改,显示
# -*- coding:UTF-8 -*-
print("***名片管理系统***")
card_infors=[]#定义一个列表,用来储存名片
def print_menu():
"完成打印功能菜单"
print("="*50)
print("名片管理系统vo.01")
print("1.添加一个新的名片")
print("2.删除一个名片")
print("3.修改一个名片")
print("4.查询一个名片")
print("5.显示所有的名片")
print("6.退出系统")
print("="*50)
def add_new_card_infor():
"***完成添加一个新的名片***"
new_name = raw_input("请输入一个新的名字:")
new_qq = input("请输入qq:")
new_weixin = input("请输入微信:")
new_addr = raw_input("请输入地址:")
#定义一个新的字典,用来储存一个新的名片
new_infor = {}
new_infor['name']=new_name
new_infor['qq']=new_qq
new_infor['weixin']=new_weixin
new_infor['addr']=new_addr
#将一个字典,添加到字典中
global card_infors
card_infors.append(new_infor)
#print(card_infors)
#for test
def find_card_infor():
"***查询一个名片***"
global card_infors
find_name = raw_input("请输入要查找的名字:")
find_flag = 0#默认表示没有找到
for temp in card_infors:
if find_name==temp['name']:
print("%s\t%s\t\t%s\t\t%s"%(temp['name'],temp['qq'],temp['weixin'],temp['addr']))
find_flag = 1#表示找到了
break
#判断是否找到此人
if find_flag==0:
print("查无此人")
def  show_all_infor():
"***显示所有信息***"
global card_infors
print("姓名\tQQ\t\t\t微信\t\t\t住址")
for temp in card_infors:
print("%s\t%s\t%s\t%s\t"%(temp['name'],temp['qq'],temp['weixin'],temp['addr']))
def del_card_infor():
global card_infors
del_name = raw_input("请输入要删除的名字:")
flag = 0
for temp in card_infors:
if del_name==temp['name']:
print("%s\t%s\t\t%s\t\t%s"%(temp['name'],temp['qq'],temp['weixin'],temp['addr']))
card_infors.remove(temp)
#card_infors.pop(temp)不可以使用,因为里面只能是只能是整形在小括号里
#del card_infor[]只有知道要删除的元素的脚码,才可以使用
show_all_infor()#将删除后的名片打印出来
flag = 1
break
if flag==0:
print("查无此人,无法执行删除")
def change_card_infor():
"****修改一个信息****"
change_name = raw_input("请输入要更改的名字:")
change_flag = 0#默认没有找到要更该的名字
fllag=0#默认没有修改成功
sign=0
for temp in card_infors:
sign+=1
if change_name==temp['name']:
change_flag=1#找到要修改的名字
print("1.修改名字")
print("2.修改qq")
print("3.修改微信")
print("4.修改地址")
print("5.退出系统")
while True:num = input("请输入要修改的编号:"):
if num==1:
card_infors[sign-1]['name']=raw_input("请输入一个新的名字:")
fllag=1#表示修改成功
elif num==2:
card_infors[sign-1]['qq']=raw_input("请输入一个新的qq:")
fllag=1
elif num==3:
card_infors[sign-1]['weixin']=raw_input("请输入一个新的微信:")
fllag=1
elif num==4:
card_infors[sign-1]['addr']=raw_input("请输入一个新的地址:")
fllag=1
else:
print("退出系统")
break
if change_flag==0:
print("没有找到要修改的人")
if fllag==1:
print('修改成功')
show_all_infor()#将修改后的信息都显示出来
def main():
"***完成对整个程序的控制"
#1.打印功能提示
print_menu()
while True:
#2.获取用户的输入
num=int(input("请输入操作的序号:"))
if num==1:
add_new_card_infor()
elif num==2:
del_card_infor()
elif num ==3:
change_card_infor()
elif num==4:
find_card_infor()
elif num==5:
show_all_infor()
elif num==6:
break
else:
print("输入有误,重新输入")
print("")
main()

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐