本例是Python基础示例。涉及Python基础,包括语法、字典型数据结构、类、引入库、pickle实现的存储器、异常处理等。

示例是一个电话本。可以对电话本进行增加、删除、修改、获取列表和获取单人的。

Python中,Pickle和cPickle都可以完成存储器的任务,不过cPickle是C语言所写,据称性能高于Pickle1000倍

Python中的Pickle是把一个对象存入文件中。作为完全面向对象的语言,在声明/初始化一个变量的时候,比如字典,也就是关联数组,Python其实是在实例化一个字典对象。那么Pickle就可以把这个字典对象存入一个文件,读出来的时候不但这个字典是完整的数据,而且可以继续使用这个字典对象的方法。

Python是用缩进来时别语句块的。因为我是在VIM下写好复制出来的,所以在博客看到的可能缩进会有问题。#引入pickle库。cPickle比Pickle快1000倍

import cPickle as pickle

#import Pickle as pickle

#电话本类

class Address:

#初始化

def __init__(self):

#把数据存到那个文件里

self.filename = 'list.data'

f = file(self.filename)

#如果文件是新建的或者是空内容的,则初始化为一个空的字典(关联数组)

try:

self.lists = pickle.load(f)

except:

print 'Address Book is empty.initializing.....'

self.lists = {}

f.close()

#添加联系人

def add(self, name, age, mobile, mail):

newUser = {'name':name, 'age':age, 'mobile':mobile, 'mail':mail}

self.lists[name] = newUser

#删除联系人

def delete(self, name):

if name in self.lists:

del self.lists[name]

print 'delete ', name

else:

print 'No exists ', name

#获取列表

def getList(self):

print 'Address Book List:'

print self.lists

#获取指定姓名的联系人

def getOne(self, name):

if name in self.lists:

print self.lists[name]

else:

print 'Not Exists:', name

#修改联系人

def edit(self, name, key, value):

self.lists[name][key] = value

#类运行结束,执行特殊方法__del__,也就是析构函数

def __del__(self):

f = file(self.filename, 'w')

pickle.dump(self.lists, f)

f.close()

#初始化电话本类

obj = Address()

#添加一个联系人

obj.add('lane', 23, 18500000000, 'lixuan868686@163.com')

#获取所有联系人的列表

obj.getList()

#获取lane这个人的联系方式

obj.getOne('lane')

#获取xiaoming这个人的联系方式

obj.getOne('xiaoming')

//修改lane这个人的年龄为24

obj.edit('lane', 'age', '24')

python程序实例电话本-Python示例相关推荐

  1. python程序实例电话本-Python基于递归实现电话号码映射功能示例

    本文实例讲述了Python基于递归实现电话号码映射功能.分享给大家供大家参考,具体如下: 问题 电话按键上面的每个数字都对应着几个字母,如果按下一个数字键代表输入一个字母,那么输入一个数字组成的字符串 ...

  2. python程序实例电话本-利用Python电话本小程序!这波操作你给几分?

    原标题:利用Python电话本小程序!这波操作你给几分? 最近比较忙,只能抽空的写写文章,其实我也是一个上班族,python完全是个人想学然后希望以后对工作有所帮助,2019年了,祝大家新年快乐. 2 ...

  3. python程序实例电话本-零基础案例,别再错过了,动手Python做一个电话本小程序!...

    最近比较忙,只能抽空的写写文章,其实我也是一个上班族,python完全是个人想学然后希望以后对工作有所帮助,2019年了,祝大家新年快乐. image image 我们就必须要懂得写脚本来提高下效率了 ...

  4. python程序实例教程基础-Python程序设计案例教程——从入门到机器学习(微课版)...

    第1章Python语言快速入门1 1.1Python的安装与配置1 1.2运行Python程序2 1.2.1运行Python的方式2 1.2.2Python编写规范4 1.3编写简单的Python程序 ...

  5. python程序实例教程基础-python基础教程第三版源代码

    [实例简介] python基础教程第三版源代码 python基础教程第三版源代码 [实例截图] [核心代码] Beginning_Python_version3_SourceCode └── Begi ...

  6. python程序实例教程基础-Python程序设计实例教程

    图书简介 配套资源:电子课件,习题答案,教学大纲,源代码 本书特色: ★本书共14个项目,主要包括Python编程基础.网络爬虫.数据分析和数据可视化四大部分内容. ★全部代码适用于Python 3. ...

  7. python程序实例教程基础-Python简单基础小程序的实例代码

    1 九九乘法表 for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j in range(i):#从0循环到i j += 1 print(j,'*',i, ...

  8. python代码实例-python程序实例

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. github.comteamssixdouluo-download.gi ...

  9. python程序格式框架的描述_python 程序语言设计(嵩天)-学习笔记(第二章python 程序实例解析)...

    第 2 章 python 程序实例解析 学习目标: 掌握解决计算问题的一般方法. 掌握python语言的基本语法,包括缩进.变量.命名等. 掌握python语言绘制图形的一般方法. 了解python标 ...

最新文章

  1. 从源码分析DEARGUI之add_simple_plot
  2. 分布式缓存使用介绍MemCache
  3. 谷歌浏览器没法安装插件,提示程序包无效
  4. P3714 [BJOI2017]树的难题
  5. 知乎高赞:Serverless 能取代微服务吗?
  6. 用生动的案例一步步带你学会python多线程模块
  7. 句句真研—每日长难句打卡Day17
  8. 牛腩新闻发布系统(7)——总结
  9. 【吐血整理】Java项目源码分享
  10. 分享一个奇葩SM2258XT板子(100-H00112581-590)没有CE跳线,只有CE飞线,顺便量产开卡
  11. excel如何制作图表
  12. win10打印服务器纸规格没有显示,win10系统打印机添加了自定义的纸张却找不到的操作办法...
  13. 读《所谓情商高,就是会说话》笔记
  14. python发微信提醒天气冷了注意保暖_天气变冷了,用Python给父母制作一个天气提醒小助手~...
  15. 七(10)springtask-RabbitMq-内容审核
  16. T3600工作站重做磁盘阵列及安装系统说明文档
  17. 知识竞赛答题小程序的管理后台搭建教程
  18. 不知道视频画面大小裁剪怎么操作?1分钟教你学会裁剪大小
  19. C语言中的指针以及二级指针
  20. 软件开发实训(720科技)水库大坝安全监测监控平台

热门文章

  1. mysql慢SQL探测与优化
  2. java之IO整理(中)
  3. jQuery常用事件处理
  4. jQuery可以查MySQL吗,我们可以在JQuery中执行SQL查询吗
  5. 华为python工程师工资-华为百万年薪抢人工智能应届生,这个高薪行业你如何进入?...
  6. python在化学方面的应用-python化学库
  7. python考证书-计算机二级 Python 怎么考?考什么?
  8. 如何在电脑上安装python-在电脑上安装python的方法
  9. python下载代码-Python3----下载小说代码
  10. python的工资为什么这么低-为什么学完Python找不到工作?原因如下!