python手机通讯录管理,python 电话本管理例子

#!/usr/bin/env python

#coding=utf-8

#电话本管理,可以进行添加,删除,修改,查询用户信息

import cPickle as p

class Telephone:

def __init__(self):

'''构造方法 '''

def addPeople(self,name,email,telephone):

"""添加用户"""

teleDict = self.getDictData()

if teleDict:

infoList = [name,email,telephone]

teleDict[name] = infoList

self.writefile(teleDict)

else:

teleDict = {}

infoList = [name,email,telephone]

teleDict[name] = infoList

self.writefile(teleDict)

def delPeople(self,name):

"""删除用户"""

teleDict = self.getDictData()

if name in teleDict.keys():

del teleDict[name]

self.writefile(teleDict)

else:

print name,'is not in dict'

def editPeople(self,name,emial,telephone):

""" 修改信息"""

teleDict = self.getDictData()

if name in teleDict.keys():

infoList = [name,email,telephone]

teleDict[name] = infoList

self.writefile(teleDict)

print name+'edit success'

else:

print name,'is not in dict'

def getPeople(self,name):

"""获取用户信息"""

teleDict = self.getDictData()

if teleDict:

if name in teleDict.keys():

people = teleDict[name]

print people

else:

print name,'is not in dict'

else:

print 'people is empty'

def writefile(self, dictData):

""" 写入文件"""

f = file('dict.data','w')

p.dump(dictData,f)

f.close()

def getDictData(self):

""" 获取文件内容"""

fileName = 'dict.data'

try:

f = file(fileName)

teleDict = p.load(f)

return teleDict

except:

print 'open file error'

# 提示 信息

def notice():

print "please enter 1-get people 2-add people 3-edit pelole 4-del people 5-get all people 0-break"

if __name__ == "__main__":

while(True):

notice()

userInput = int(raw_input())

people = Telephone()

if userInput == 1:

name = raw_input("please enter user name:")

people.getPeople(name)

elif userInput == 2:

name = raw_input("enter name:")

email = raw_input("enter emai:")

telephone = raw_input("enter telephone:")

people.addPeople(name,email,telephone)

elif userInput == 3:

name = raw_input("enter name:")

email = raw_input("enter emai:")

telephone = raw_input("enter telephone:")

people.editPeople(name,email,telephone)

elif userInput == 4:

name = raw_input("enter del people name:")

people.delPeople(name)

elif userInput == 5:

allpeople = people.getDictData()

if allpeople:

for key in allpeople:

print key,allpeople[key]

else:

print 'there is no people'

elif userInput == 0:

break

else:

print 'you select number is wrong'

raw_input('press enter')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值