一个简单的python程序实例(通讯录)
admin
2023-07-31 02:01:32
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,有诸多不足,以后改进

相关内容

热门资讯

500 行 Python 代码... 语法分析器描述了一个句子的语法结构,用来帮助其他的应用进行推理。自然语言引入了很多意外的歧义,以我们...
定时清理删除C:\Progra... C:\Program Files (x86)下面很多scoped_dir开头的文件夹 写个批处理 定...
65536是2的几次方 计算2... 65536是2的16次方:65536=2⁶ 65536是256的2次方:65536=256 6553...
Mobi、epub格式电子书如... 在wps里全局设置里有一个文件关联,打开,勾选电子书文件选项就可以了。
scoped_dir32_70... 一台虚拟机C盘总是莫名奇妙的空间用完,导致很多软件没法再运行。经过仔细检查发现是C:\Program...
小程序支付时提示:appid和... [Q]小程序支付时提示:appid和mch_id不匹配 [A]小程序和微信支付没有进行关联,访问“小...
pycparser 是一个用... `pycparser` 是一个用 Python 编写的 C 语言解析器。它可以用来解析 C 代码并构...
微信小程序使用slider实现... 众所周知哈,微信小程序里面的音频播放是没有进度条的,但最近有个项目呢,客户要求音频要有进度条控制,所...
python查找阿姆斯特朗数 题目解释 如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数。 例如1^3 + 5...
Apache Doris 2.... 亲爱的社区小伙伴们,我们很高兴地向大家宣布,Apache Doris 2.0.0 版本已于...