简单的手机通讯录
phone_dic = {} #保存的电话本 chois = 9 #用户选择菜单 isfind = 0#查找是否存储的电话 print('''通讯录功能 1.添加联系人 2.删除联系人 3.查找联系人 4.电话本显示 5.退出 ''') # if os.path.isfile('phonedic.txt'): #是否存在文件 if os.path.getsize('phonedic.txt') : f = open('phonedic.txt',encoding='utf-8',mode='r') for line in f: line.strip() if len(line)>6:#联系人和电话要超过长度6 liststr = line.split(',') phone_dic[liststr[0]] = liststr[1] print('目前已录入的联系人电话:\n' +'\n'.join(phone_dic)) f.close() while chois != 0: chois = input('请选择你要操作的数字').strip() if chois.isdigit():#是否是数字: if int(chois) == 1: name = input('请输入姓名:').strip() phone = input('请输入电话号码').strip() while len(phone) < 6: print('你输入的电话号码不对,请重新输入') phone = input('请输入电话号码').strip() phone_dic[phone] = name f = open('phonedic.txt',mode='w',encoding='utf-8') # if os.path.getsize('phonedic.txt'): # f.truncate() #truncate() 方法用于截断文件,如果指定了可选参数 size,则表示截断文件为 size 个字符。 如果没有指定 size,则从当前位置起截断;截断之后 size 后面的所有字符被删除。 # for items in phone_dic.items(): # f.write(items[0]+','+items[1] + '\n') # print(phone_dic) for items in phone_dic.items(): f.write(items[0]+','+items[1]+ '\n') f.close() print("\033[1;32m 联系人已经保存在通讯录!!! \033[0m") elif int(chois) == 2: name = input('请输入联系人的电话').strip() while len(name) ==0: print('输入错误,请重新输入电话号码') if name in phone_dic: del phone_dic[name] print(phone_dic) f = open('phonedic.txt',mode='w',encoding='utf-8') for items in phone_dic.items(): f.write(items[0]+','+items[1]+'\n') f.close() print("\033[1;32m 联系人 "+name+ "已删除!! \033[0m" ) print("保存的联系人电话是:\n " + "\n ".join(phone_dic)) else: print('\033[1;32m 通讯录中不存在要删除的联系人!!! \033[0m') elif int(chois) == 3: name = input('请输入联系人电话').strip() while len(name) == 0: print('输入错误,请重新输入电话号码') isfind = 0 for items in phone_dic.items(): if name == items[0]: isfind = 1 print("你要查找的联系人是: \n" + items[0] + " " + items[1] ) if isfind == 0: print('\033[1;32m 通讯录中没有你要查找的联系人!!! \033[0m') elif int(chois) == 4: print('电话 联系人') for items in phone_dic.items(): print(items[0] + ' '+items[1]) elif int(chois) == 5: break else: print('输入非法,请重新输入') chois = input('请选择你要操作的数字').strip()