1 #-*-encoding:utf-8-*-
2 #用来存储名片
3 card_infors = [] # 空的列表
4
5 def print_menu():
6 #完成打印功能菜单
7 print("="*50)
8 print(" 名片管理系统 V0.01")
9 print(" 1. 添加一个新的名片")
10 print(" 2. 删除一个名片")
11 print(" 3. 修改一个名片")
12 print(" 4. 查询一个名片")
13 print(" 5. 显示所有的名片")
14 print(" 6. 退出系统")
15 print("="*50)
16
17 def add_new_card_infor():
18 #完成添加一个新的名片
19 new_name = raw_input("请输入新的名字:")
20 new_qq = raw_input("请输入新的QQ:")
21 new_weixin = raw_input("请输入新的微信:")
22 new_addr = raw_input("请输入新的住址:")
23
24 #定义一个新的字典,用来存储一个新的名片
25 new_infor = {}
26 new_infor['name'] = new_name
27 new_infor['qq'] = new_qq
28 new_infor['weixin'] = new_weixin
29 new_infor['addr'] = new_addr
30
31 #将一个字典,添加到列表中
32 global card_infors
33 card_infors.append(new_infor)
34
35 #print(card_infors)# for test
36
37 def find_card_infor():
38 global card_infors
39 find_name = raw_input("请输入要查找的姓名:")
40 find_flag = 0 #默认表示没有找到
41 for temp in card_infors:
42 if find_name == temp["name"]:
43 print("%s\t%s\t%s\t%s"%(temp['name'],temp['qq'],temp['weixin'],temp['addr']))
44 find_flag = 1
45 break
46 if find_flag == 0:
47 print("不能找到这个人")
48
49 def show_all_inf():
50 global card_infors
51 print("姓名\tQQ\tweixin\t地址")
52
53 for temp in card_infors:
54 print("%s\t%s\t%s\t%s"%(temp['name'],temp['qq'],temp['weixin'],temp['addr']))
55 # print("-------显示完毕--------")
56
57 def modify_inf():
58 #修改函数
59 global card_infors
60 mod_name = raw_input("请输入需要修改的名字:")
61 for temp in card_infors:
62 if temp['name'] == mod_name:
63 temp['name'] = raw_input("请输入新的名字:")
64 temp['qq'] = raw_input("请输入新的qq:")
65 temp['weixin'] = raw_input("请输入新的微信:")
66 temp['addr'] = raw_input("请输入新的住址:")
67 print("-------修改完毕--------")
68 return
69 print("-------查无此人--------")
70
71 def delete_inf():
72 #删除函数
73 global card_infors
74 del_name = raw_input("请输入要删除的姓名:")
75 for temp in card_infors:
76 if temp['name'] == del_name:
77 card_infors.remove(temp)
78 break
79 print("-------删除完毕--------")
80
81 def main():
82 #完成对整个模块的调用
83 print_menu()
84
85 while True:
86 #获取用户输入
87 num = input("请输入选择:")
88 if num == 1:
89 add_new_card_infor()
90 elif num == 2:
91 delete_inf()
92 elif num == 3:
93 modify_inf()
94 elif num == 4:
95 find_card_infor()
96 elif num == 5:
97 show_all_inf()
98 elif num == 6:
99 break
100 else:
101 print("输入有误,重新输入")
102 main() # 主函数执行