# 利用字典的特性编写一个通讯录,记录姓名和联系(contact)电话
# 新增加将通讯录储存到文件里,下次启动可以直接调用,而不是每次都归零
# 先新建一个空白的addressBook.txt
1 welcome = """
2 欢迎进入通讯录程序
3 1:查找联系人资料
4 2:插入新的联系人
5 3:删除联系人
6 4:退出程序
7 """
8 print(welcome)
9 addressBook = {}
10 with open('addressBook.txt', 'r', encoding='GBK') as f:
11 for eachline in f.readlines():
12 each1 = eachline.strip('
')
13 # print(each1.split(':'))
14 (name, phone) = each1.split(':')
15 addressBook[name] = phone
16 while True: # 循环用来多次操作直到退出程序
17 try:
18 n = int(input('请输入相应的选项:'))
19 except Exception:
20 print('请输入正确的数字选项!')
21 continue
22 if n == 1:
23 name = input("请输入要查找的联系人:")
24 if name in addressBook:
25 print(name + ':' + addressBook[name])
26 else:
27 print('查无此人!')
28 elif n == 2:
29 name = input("请输入新的联系人姓名:")
30 if name in addressBook:
31 print(name + '已经在通讯录里面')
32 else:
33 phone = input("请输入新的联系人的联系电话:")
34 addressBook[name] = phone
35 with open('addressBook.txt', 'a+') as f:
36 f.write(name + ':' + phone + '
')
37 print(name + ':' + phone + '已添加')
38 elif n == 3:
39 name = input("请输入要删除的联系人:")
40 if not(name in addressBook):
41 print(name + '不在通讯录里面')
42 else:
43 del addressBook[name]
44 print(name + ':' + '已删除')
45 elif n == 4:
46 print('感谢使用通讯录,再见!')
47 break