一个简单的python程序实例(通讯录)

所属分类: 脚本专栏 / python 阅读数: 928
收藏 0 赞 0 分享

核心代码:

复制代码 代码如下:

#!/usr/bin/python
#Filename:friendbook.py
import cPickle as p
import sys
import time
import os

ab={'Xdex':'cneds@fnedf.com',
        'Laexly':'fev@fe.com',
        'Fukc':'fexok@ver.com',
        'Stifu':'stif@qq.com'
}


def Dumpfile(list):
        f=file(friendab,'w')
        p.dump(list,f)
        f.close()


if os.path.isfile('friendab.data'):
        friendab='friendab.data'
else:
        os.touch('friendab.data')
        Dumpfile(ab)
        del ab


f=file(friendab)
frilist=p.load(f)


class Person:
        def __init__(self,name):
                self.name=name
        def saysome(self):
                print 'The friend %s,his E-mail is %s '%(sname,frilist[sname])
class addPerson:
        def __init__(self,name,email):
                self.name=name
                self.email=email
        def addbook(self):
                ab=frilist
                ab[sname]=email
                Dumpfile(ab)
                del ab
                print 'Succlessful!'
class delPerson:
        def __init__(self,name):
                self.name=name
        def delbook(self):
                ab=frilist
                ab.pop(sname)
                Dumpfile(ab)
                del ab
                print 'Success DEL'

class alterPerson:
        def __init__(self,name,email):
                self.name=name
                self.email=email
        def alterbook(self):
                ab=frilist
                ab[sname]=email
                Dumpfile(ab)
                del ab
                print 'Succlessful update!'

print '''\
This program prints files to the standard output.
Any number of files can be specified.
Options include:
[1] : Search your friend's email from friendsbook
[2] : add your friend's email to firendsbook
[3] : del your friend's email from firnedsbook
[4] : alter your friend's email from friendsbook
[5] : All friends list
[6] : exit the program
'''


num=raw_input('Press the number [1,2,3,4,5] -->')


if (num=='1'):
        sname=raw_input('Enter the name-->')
        if sname in  frilist:
                p=Person(sname)
                p.saysome()
        else:
                print 'Not in it'
elif (num=='2'):
        sname=raw_input('Enter the name-->')
        email=raw_input('Enter the email-->')
        pa=addPerson(sname,email)
        pa.addbook()
        #p=Person(sname)
        #p.saysome()
        print frilist
elif (num=='3'):
        sname=raw_input('Enter the name-->')
        pa=delPerson(sname)
        pa.delbook()
elif (num=='4'):
        sname=raw_input('Enter the name-->')
        if sname in  frilist:
                email=raw_input('Enter the email-->')
                p=alterPerson(sname,email)
                p.alterbook()
        else:
                print 'Not in it'
elif (num=='5'):
        print frilist
elif (num=='6'):
        print "Bye!"
else:
        print "Please input the right number"

注:这是本人写的第一个python,有诸多不足,以后改进

更多精彩内容其他人还在看

用Python实现服务器中只重载被修改的进程的方法

这篇文章主要介绍了用Python实现服务器中只重载被修改的进程的方法,包括用watchdog来检测文件的变化等,实现起来充分体现了Python作为动态语言的灵活性,强烈推荐!需要的朋友可以参考下
收藏 0 赞 0 分享

python使用mailbox打印电子邮件的方法

这篇文章主要介绍了python使用mailbox打印电子邮件的方法,涉及Python打印电子邮件的相关技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

python中随机函数random用法实例

这篇文章主要介绍了python中随机函数random用法,实例分析了random函数的相关使用技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python模拟enum枚举类型的方法小结

这篇文章主要介绍了python模拟enum枚举类型的方法,实例总结了python模拟enum枚举类型的相关技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python遍历数组的方法小结

这篇文章主要介绍了python遍历数组的方法,实例总结了两种Python遍历数组的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python实现指定字符串补全空格的方法

这篇文章主要介绍了python实现指定字符串补全空格的方法,涉及Python中rjust,ljust和center方法的使用技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python实现同时给多个变量赋值的方法

这篇文章主要介绍了python实现同时给多个变量赋值的方法,涉及Python中变量赋值的相关技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python中assert用法实例分析

这篇文章主要介绍了python中assert用法,实例分析了assert的功能及相关使用技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python中pass语句用法实例分析

这篇文章主要介绍了python中pass语句用法,对比C++程序实例分析了pass语句的使用方法,具有一定参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

python实现的简单文本类游戏实例

这篇文章主要介绍了python实现的简单文本类游戏,以两个实例形式分析了python操作文本与字符串的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多