Python实现的命令行通讯录
Python #通讯录2012-11-25 22:38
支持添加、删除、修改、搜索你的联系人以及他们的信息,包括性别,手机号码,邮箱和家庭住址。这些信息可以离线保存。
代码如下:
#!/bin/python #coding=gb2312 import os; try: import cPickle as p; except: import pickle as p; class Person: def __init__(self,name,sex="M",mobile="",email="",address=""): self.name=name; self.sex=sex; self.mobile=mobile; self.email=email; self.address=address; def alterInfo(self,mobile,email,address): self.mobile=mobile; self.email=email; self.address=address; if os.path.exists("./dir.txt")==False: dirlist={};#空的通讯录 p.dump(dirlist,open("./dir.txt",'w'),1);#把空的通讯录写入到文本文件中 print "请输入要进行的操作(添加:a,删除:r,修改:m,查找:f,退出:q):"; list=p.load(open("./dir.txt",'r')); con=True; while con: choice=raw_input("请选择你的操作(a,r,m,f,q):"); if choice=='a': #添加 n1=raw_input("请输入要添加人的姓名:"); s1=raw_input("请输入要添加人的性别:"); m1=raw_input("请输入要添加人的手机号码:"); e1=raw_input("请输入要添加人的邮箱地址:"); a1=raw_input("请输入要添加人的住址:"); per1=Person(n1,s1,m1,e1,a1); list[n1]=per1;#加入到列表 print "添加%s成功!\n" %n1; elif choice=='r': #删除 n2=raw_input("请输入要删除的联系人姓名:"); del list[n2]; print "删除%s成功!\n" %n2; elif choice=='m': #修改 n3=raw_input("请输入要修改人的姓名:"); m3=raw_input("请输入要修改人的手机号码:"); e3=raw_input("请输入要修改人的邮箱地址:"); a3=raw_input("请输入要修改人的住址:"); per3=list[n3]; per3.alterInfo(m3,e3,a3); list[n3]=per3; print "修改%s成功!\n" %n3; elif choice=='f': #查找 n4=raw_input("请输入要查找人的姓名:"); try: per4=list[n4]; print "%s的信息如下:" %n4; print "性别:%s,手机:%s,邮箱:%s,住址:%s\n" %(per4.sex,per4.mobile,per4.email,per4.address); except: print "%s不存在,没有这个人!\n" %n4; elif choice=='q': p.dump(list,open("./dir.txt",'w'),1); con=False;#退出 else: print "请输入正确的操作选项! http://yige.org "; continue;
相关文章
- Python中unicode码转utf8的方法 2012/11/25
- Python二叉树算法实现 2012/11/25
- Python实现的豆瓣电影信息查询 2012/11/25
- Python实现双倍超立方数 2012/11/25
- 用Python实现定时关机 2012/11/25
- 用Python实现的简易采集爬虫 2012/11/23
- Python实现QQ登陆 2012/11/23
- 用Python按日期导出所有微信 2012/11/23
- Python使用global语句 2012/11/23
- 说说Python的版本选择、IDE、库 2012/11/23