瞭看Python程序说明介绍

开发 后端
Python具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用,它的名字来源于一个喜剧,也许最初设计Python程序。

Python免费开源,可移植到多种操作系统,只要避免使用依赖于特定操作系统的特性,Python程序无需修改就可以在各种平台上面运行,掌握了Python程序这们语言会使我们的编程工作更简单和更轻松。

顾名思义,PIL(Python Imaging Library)是建立在Python的基础上的,所以从前天开始下载了Python2.6,看了Python简明手册,在这个手册的最后,作者建议初学者做这样一个程序,即实现:创建你自己的命令行 地址簿程序。

在这个程序中,你可以添加、修改、删除和搜索你的联系人(朋友、家人和同事等等)以及它们的信息(诸如电子邮件地址和/或电话号码)。这些详细信息应该被保存下来以便以后提取。用Python程序

经过几小时的折腾,程序代码如下:(顺便说下,Python真的比较好上手,比起当初学VC/MFC可是轻松多了,当然也或许有部分原因是已经经历过了c++)

  1. #MyFirstIntegratedPythonProgram     
  2. import cPickle as P     
  3.     
  4. class notebook:     
  5.     dictnote={}     
  6.     def __init__(self):     
  7.         notebook.dictnote={'Randy':'12347865',     
  8.                            'Jackson':'67549087',     
  9.                            'Mary':'56432876'}     
  10.         f=file('storeFile.txt','a')     
  11.         P.dump(notebook.dictnote,f)     
  12.         f.close()     
  13.     def __del__(self):     
  14.         f=file('storeFile.txt','a')     
  15.         P.dump(notebook.dictnote,f)     
  16.         f.close()     
  17.         notebook.dictnote={}     
  18.              
  19.     def delInfo(self,name):     
  20.         while notebook.dictnote.__contains__(name)==False:     
  21.             print "数据库中没有该联系人的信息,请检查输入是否有误!"    
  22.             break    
  23.         else:     
  24.             del notebook.dictnote[name]       
  25.             #dictnote.__delitem__(name)     
  26.             f=file('storeFile.txt','w')         
  27.             P.dump(notebook.dictnote,f)         
  28.             f.close()                           
  29.     def addInfo(self,name,phone_number):        
  30.         while notebook.dictnote.__contains__(name)==True:     
  31.             print "数据库中已经有该联系人的信息,请确认输入无误!"    
  32.             break    
  33.         else:     
  34.             notebook.dictnote.__setitem__(name,phone_number)     
  35.     def inquiryInfo(self,name):     
  36.         while notebook.dictnote.__contains__(name)==False:     
  37.             print "数据库中没有该联系人的信息,请检查输入是否有误!"    
  38.             break    
  39.         else:     
  40.             print "你查询的联系人姓名是:'%s',电话号码是:'%s'" %\     
  41.               (name,notebook.dictnote.__getitem__(name))     
  42.     def inquiryAll(self):     
  43.         print "所有联系人的信息如下所示:\n%s"%notebook.dictnote     
  44.     def amendInfo(self,name):     
  45.         addr=raw_input("请确定修改后的地址是:")     
  46.         notebook.dictnote[name]=addr         
  47.         print "现在该联系人的信息为:",name,notebook.dictnote[name]     
  48.                  
  49.     
  50.     
  51. flag=True    
  52. MyNoteBook=notebook()     
  53. while flag==True:         
  54.     answer=raw_input('请确认你想"浏览联系人(L)"、"查询联系人(C)"、"添加联系人(T)"、\     
  55. "修改联系人(X)"、"删除联系人(S)"、"退出本程序(E)"?')     
  56.          
  57.     if answer=='C':     
  58.         key=raw_input('请输入想查询的联系人姓名:')     
  59.         MyNoteBook.inquiryInfo(key)     
  60.              
  61.     elif answer=='T':     
  62.         key_name=raw_input('请输入想添加的联系人姓名:')     
  63.         key_phone=raw_input('请输入该联系人的电话号码:')     
  64.         MyNoteBook.addInfo(key_name,key_phone)     
  65.              
  66.     elif answer=='S':     
  67.         key=raw_input('请输入想删除的联系人姓名:')     
  68.         MyNoteBook.delInfo(key)     
  69.              
  70.     elif answer=='X':     
  71.         key=raw_input('请输入想修改的联系人姓名:')     
  72.         MyNoteBook.amendInfo(key)     
  73.     
  74.     elif answer=='L':     
  75.         MyNoteBook.inquiryAll()     
  76.              
  77.     elif answer=='E':     
  78.         flag=False    
  79.     else:     
  80.         print "请确认你输入的是字母'C','T','S','E',即希望进行操作:查询、添加、删除\     
  81.                 以及退出!" 

【编辑推荐】

  1. 有关Python系统文件进行介绍指导
  2. 如何正确的使用Python函数
  3. 对Python 构建工具进行详细介绍分析
  4. PythonAndroid浅析Python优势所在
  5. 如何使用Python模块解析配置文件?
责任编辑:chenqingxiang 来源: 博客园
相关推荐

2010-02-23 09:39:58

Python应用程序

2010-02-06 14:13:04

谷歌Android

2010-02-22 17:46:57

Python应用程序

2009-12-22 11:29:34

ADO Records

2010-03-11 10:27:05

交换机

2010-03-12 13:14:36

2010-03-03 17:29:30

Android程序

2009-12-21 10:47:27

ORACLE .NET

2010-01-19 17:54:47

C++程序

2010-02-01 18:06:48

Python Edit

2010-02-22 16:16:14

Python语法

2010-02-03 17:37:30

Python语法

2010-02-02 14:54:28

Python语法

2010-02-02 13:28:46

Python变量

2010-02-04 16:37:40

Android程序

2010-02-01 17:11:45

Python 解释器

2010-02-22 09:33:43

Python语言

2010-02-23 14:41:28

Python模块

2010-03-18 16:01:19

2009-12-09 09:16:32

Visual Stud
点赞
收藏

51CTO技术栈公众号