Rumah > pembangunan bahagian belakang > Tutorial Python > python 电话本管理例子

python 电话本管理例子

大家讲道理
Lepaskan: 2016-11-09 11:36:39
asal
1480 orang telah melayarinya

#!/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')
Salin selepas log masuk

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan