Python实战1——address_book.py
来源:互联网 发布:周继红 田亮 知乎 编辑:程序博客网 时间:2024/06/05 23:45
# 地址簿程序import pickle as pimport sysclass Person: #实际上不用类也可实现 def __init__(self,name,address): self.name=name self.address=address def __Print__(self): print('%s 的地址为:%s'%(self.name,self.address))book={}filename='MyAddressBook.txt'try: f=open(filename,'rb') book=p.load(f) f.closeexcept EOFError: pass#如果f为空的话会报错,实际上影响不大,所以这里跳过print('-——————————————-')print('操作编号:')print('1->添加联系人\n2->删除联系人')print('3->修改联系人\n4->查找联系人')print('5->打印当前地址列表\n其他->保存文件')print('-——————————————-')while True: sel=input('请选择要进行的操作:') if sel=='1': name=input('>输入联系人的姓名:') address=input('>输入联系人的地址:') book[name]=address print('已添加%s!'%name) elif sel=='2': name=input('>输入联系人的姓名:') if name in book: del book[name] else: print('该联系人不存在!') print('已删除%s!'%name) elif sel=='3': name=input('>输入联系人的姓名:') address=input('>重新输入联系人的地址:') book[name]=address print('已修改%s!'%name) elif sel=='4': name=input('>输入联系人的姓名:') if name in book: print('%s 的地址为:%s'%(name,book[name])) else: print('该联系人不存在!') elif sel=='5': if 0==len(book): print('地址簿是空的呢!') else: print('*****************') print('>>>>>地址列表<<<<\n') for name,address in book.items(): print('%s:%s'%(name,address)) print('\n*****************') else: breakf=open(filename,'wb')p.dump(book,f)f.closeprint('保存完成!')f=open(filename,'rb') b=p.load(f)f.close#这个地方加这几行代码,是因为不加的话会出现问题:#当f为空之后,下一次运行就算输入数据也不会被保存。#不知道为什么会这样。sys.exit()
阅读全文
0 0
- Python实战1——address_book.py
- Python——SSHClient.py
- Python基础知识1——py /pyc/pyo
- python解析xml——generateDS.py
- Python的基础—__init__.py介绍
- python——python manage.py runserver执行错误
- start—py(1、函数)
- UDPClient.py&UDPServer.py——我的第一行Python代码
- python:脚本:1:AdapterRemoval_statistics_sample.py
- Python之——PY文件中支持中文字符
- python包的导入——__init__.py
- Python服务器框架学习——web.py(一)
- cs231n:assignment2——python文件:layers.py
- cs231n:assignment2——python文件:layer_utils.py
- cs231n:assignment2——python文件:fc_net.py
- cs231n:assignment2——python文件:optim.py
- cs231n:assignment2——python文件:cnn.py
- python进制转换——py学习笔记
- Android
- html angular自定义过滤器,指定所需要替换的文字
- 使用Vbox 搭建centos7 11.2.0.4 RAC
- 移动端摄像头
- angular实现httpget请求
- Python实战1——address_book.py
- 7-8 直捣黄龙(30 分)
- android通讯录开发<三> 增删改查(附Demo)
- 欢迎使用CSDN-markdown编辑器
- 【Tips】Javascript中多重数字数组扁平化处理
- [codevs2547]东方辉针城
- workerman安装——php拓展的安装
- uploadify的JS组件报错:Uncaught TypeError: Cannot read property 'queueData' of undefined
- IE8下table th和td宽度样式混乱解决办法