python面向过程的简单通讯录示例,python通讯录示例,初学python的练手作
python面向过程的简单通讯录示例,python通讯录示例,初学python的练手作
初学python的练手作品。python面向过程的简单通讯录,希望大家多多指点,让我更进步。
下面是我的思路:
判断通讯录是否存在,不存在则创建空通讯录
添加联系人
显示所有联系人
退出通讯录
#!/usr/bin/pythonimport osimport pickleif os.path.exists(r'E:\Person.data')==False: f=open('E:\Person.data','wb') temp={'total' : 0} pickle.dump(temp,f) f.close()else: passdef add(): f=open('E:\Person.data','rb') a=pickle.load(f) f.close() b=0 name = input('请输入所要添加联系人的姓名:') for key in a.keys(): b+=1 if key==name and b <= a['total']+1: print("联系人已存在,添加失败!") break if b==a['total']+1 and key != name: number = input('请输入号码:') information={name : number} a['total']+=1 a.update(information) f=open('E:\Person.data','wb') pickle.dump(a,f) f.close() print('添加成功!') breakdef showall(): f=open('E:\Person.data','rb') a=pickle.load(f) print("一共有{}个联系人.".format(a['total'])) for key in a.keys(): if key != 'total': print("{""}:{""}".format(key,a[key])) f.close()def exit(): exec("quit()")#查找def search(name): f=open('E:\Person.data','rb') a=pickle.load(f) b=0 for key in a.keys(): b+=1 if key==name and b<=a['total']+1: print("{}的号码是: {}".format(name,a[key])) break if b==a['total']+1 and key != name: print("联系人不存在!") break f.close()#删除def deleate(name): f=open('E:\Person.data','rb') a=pickle.load(f) f.close() b=0 for key in a.keys(): b+=1 if key==name and b<=a['total']+1: a.pop(name) a['total']-=1 f=open('E:\Person.data','wb') pickle.dump(a,f) f.close() print("删除成功!") break if b==a['total']+1 and key != name: print("联系人不存在!无法删除!") break#修改def change (): x=input("请输入所要修改联系人姓名:") f=open('E:\Person.data','rb') a=pickle.load(f) f.close() b=0 for key in a.keys(): b+=1 if key==x and b<=a['total']+1: y=input("请输入修后的号码:") a[key]=y f=open('E:\Person.data','wb') pickle.dump(a,f) f.close() print("修改成功!") break if b==a['total']+1 and key != name: print("联系人不存在!") break#界面www.iplaypy.comdef point (): print("*******************************") print("显示提示信息:*") print("显示所有联系人:0") print("查找联系人:1") print("添加联系人:2") print("删除联系人:3") print("更改联系人资料:4") print("退出通讯录:5") print("*******************************")#主程序point()while True: x=input("请输入您的选择:") if x == '2': add() continue if x== '0': showall() continue if x=='5': exit() continue if x=='1': name=input("请输入所要查找联系人的姓名:") search(name) continue if x=='3': name=input("请输入所要删除联系人的姓名:") deleate(name) continue if x== '4': change() continue if x=='*': point() else: print("输入选项不存在,请重新输入!") continue
编橙之家文章,
相关内容
- Python数据库sqlite3的基本应用,python数据库sqlite3,Python数
- 显示py文件类名和函数的方法,py文件类函数,这是一个
- 下载游戏IP座标等信息的python方法,游戏ip座标python,下
- Python FTP破解小工具源码,pythonftp破解源码,Python FTP破解
- Python正态分布概率计算方法,python概率计算方法,Pytho
- 请大牛指点将List转成XML代码问题,大牛xml,近期正在学
- Python斐波那契数列简单实现源码,python斐波那契数列
- python在电脑硬盘中查找内容的方法,python中查找,pytho
- Python查找指定目录文件glob通配符方法,pythonglob,Python文
- 凯撒移位密码加密算法的Python3.0实现方法,加密算法
评论关闭