python简明教程练习--命令行 地址簿 程序
来源:互联网 发布:java简历个人评价 编辑:程序博客网 时间:2024/06/12 20:50
在这个程序中,你可以添加、修改、删除和搜索你的联系人(朋友、家人和同事等等)以及它们的信息(诸如电子邮件地址和/或电话号码)。这些详细信息应该被保存下来以便以后提取。
由于上个程序中的代码没有把信息从文件中读取出来,我们可以把相同的信息保存在info.txt文件中去,这使得info.txt文件会有多余的东西。以下是我修改后的代码
代码:
#!/usr/bin/env python# -*-encoding:utf-8 -*-'''Created on 2011-10-16@author: Descusr'''import sysimport osimport cPickleclass Person(object): filename = 'info.txt' def __init__(self, name, phone): self.name = name self.phone = phone self.personlist = {self.name:self.phone} def add(self): self.name = raw_input("Enter name:") if self.name in self.personlist.keys(): print "The name is exist!" else: self.phone=raw_input("Enter phone:") self.personlist[self.name] = self.phone print "Contact saved!" def Modify(self): self.name = raw_input("Enter name:") if self.name in self.personlist.keys(): self.phone = raw_input("Enter new phone:") self.personlist[self.name] = self.phone print "Contact saved!" else: print "The name is not in here!!" def delete(self): self.name = raw_input("Enter name:") if self.name in self.personlist.keys(): del self.personlist[self.name] print "Deleted!!" else: print "The name is not in here!!" def search(self): self.name = raw_input("Enter name:") if self.name in self.personlist.keys(): print 'Name:%s,Phone:%s'%(self.name,self.phone) else: print "The name is not in here!!" def save(self): f = file(self.filename,'w') cPickle.dump(self.personlist,f) f.close() print "Your contacts list has been saved to file:%s successfully~" %self.filename def load(self): if os.path.exists(self.filename): f = file(self.filename) self.personlist = cPickle.load(f) f.close() def show(self): for self.name,self.phone in self.personlist.items(): print "Name:%s Phone number:%s" %(self.name,self.phone)if __name__ == '__main__': os.system('clear') command = ['add','modify','search','delete','quit' ,'show'] person = Person('','') person.load() while True: print "The contact person:" str = raw_input('What are you going to do(add/modify/search/delete/show/quit)?') if str in command: if str == 'add': person.add() elif str == 'modify': person.Modify() elif str == 'search': person.search() elif str == 'delete': person.delete() elif str == 'show': person.show() else: ch = raw_input("Your contacts list hasn't been saved,save it now?(Y/N)") if ch == 'y': person.save() sys.exit() else: sys.exit() print "Exit the System" break else: print "Please input the command!"
- python简明教程练习--命令行 地址簿 程序
- python命令行地址簿程序
- 简明python地址簿
- python创建命令行地址簿程序
- python创建命令行地址簿程序
- python创建你自己的命令行,地址簿程序
- 用python创建你自己的命令行地址簿程序
- 看完《python简明教程》笔记及第一个python程序
- [转载]看完《python简明教程》笔记及第一个python程序
- 程序调试简明教程
- 简明 Python 教程
- 简明 Python 教程
- 简明Python 教程 --模块
- 简明Python教程
- 简明 Python 教程
- 《简明Python教程》读书笔记
- [ 转]简明 Python 教程
- 《简明Python教程》笔记
- 相约世纪末
- linux定时任务cron配置
- android 屏幕适配问题
- C++ Primer笔记(5)
- ORA-01034: ORACLE not available和ORA-27101: shared memory realm does not texis
- python简明教程练习--命令行 地址簿 程序
- 关于64位整型数据的问题
- 黑马程序员java笔记之四-----IO流
- 点到线段的最短距离
- hibernate 3.2.7 支持SQL SERVER 2005+的分页
- qRegister
- firefox的神器
- jqGrid 参数 详解
- Struts2的运行机制