Python学习-字典练习:简单通讯录
功能要求:
- 查询联系人,输入姓名,可以查询当前通讯录里面的联系人信息,若联系人存在,则输出联系人信息,若不存在,则告知
- 插入联系人,可以向通讯录中新建联系人,若联系人已经存在,则询问是否修改联系人信息,若不存在,则新建联系人
- 删除联系人,可以删除联系人,若联系人不存在,则告知
- 输入指令,退出通讯录
具体代码实现:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Time : 2018/3/26 10:01
# @Author : yang
# @File : Exercise.py
# @Software: PyCharm #通讯录
print('''|---欢迎进入通讯录---|
|---1、查询联系人信息---|
|---2、插入新的联系人---|
|---3、删除联系人信息---|
|---4、退出通讯录程序---|
''')
addressBook = {'小杨':12345678,'小张':12345679,'小赵':12345670}
while 1:
order_code = input('请输入指令代码:')
if order_code.isdigit() == False: #判断指令是否只有数字组成
print('您输入的指令代码格式错误,请按照提示重新输入!')
continue
item = int(order_code) #将输入指令转换为整型 if item == 4:
print('感谢使用通讯录!')
break #结束循环
#输入联系人姓名
name = input('请输入联系人姓名:')
if item == 1: #查询联系人信息
if name in addressBook:
print(name,':',addressBook[name])
continue #结束当前循环
else:
print('联系人不存在。')
if item == 2: #新建联系人
if name in addressBook:
print('你输入的联系人在通讯录中已经存在--->>',name,':',addressBook[name])
is_Edit = input('是否需要修改联系人的信息:(Y/N)') #判断是否需要修改当前联系人信息
if is_Edit == 'Y':
userphone = input('请输入联系人电话:')
addressBook[name] = userphone
print(addressBook)
continue
else:
continue
else:
userphone = input('请输入联系人电话:')
addressBook[name]=userphone
print('联系人添加成功!')
print(addressBook)
continue
if item == 3: #删除联系人
if name in addressBook:
del addressBook[name]
print('联系人删除成功!')
print(addressBook)
continue
else:
print('联系人不存在')
Python学习-字典练习:简单通讯录的更多相关文章
- Python学习第一天 -- 简单的属性、 语法学习
1,哈哈哈,是时候来一波Python,其实没办法,最近在做后台的时候,需要用到Python来调试接口,下面是它的简单的语法,权当是记录. 2, #!/user/bin/python # coding= ...
- python学习之最简单的用户注册及登录验证小程序
文章都是从我的个人博客上粘贴过来的哦,更多内容请点击 http://www.iwangzheng.com 正如很多同学所知道的,楼主开始学习python了,前进的道路曲曲折折,有荆棘也有陷阱,从最简单 ...
- Python学习 - 编写一个简单的web框架(二)
在上一篇日志中已经讨论和实现了根据url执行相应应用,在我阅读了bottle.py官方文档后,按照bottle的设计重写一遍,主要借鉴大牛们的设计思想. 一个bottle.py的简单实例 来看看bot ...
- python学习-变量和简单类型(二)
学习笔记中的源码:传送门 1.注释: 单行注释(#):多行注释("""或者''') 2.python标准数据类型:数字(numbers).字符串(string).列表(l ...
- python 学习 : 一个简单的秒表
游戏说明:绿色数字(左边表示成功停止在整秒的次数,右边表示停止的总次数) 点击stop,如果小数点后为0,即你停止的时间是整秒数,右上方斜杠左边数字加一 把代码复制到这个网页code run he ...
- Python学习 - 编写一个简单的web框架(一)
自己动手写一个web框架,因为我是菜鸟,对于python的一些内建函数不是清楚,所以在写这篇文章之前需要一些python和WSGI的预备知识,这是一系列文章.这一篇只实现了如何处理url. 参考这篇文 ...
- Python学习笔记2-flask-sqlalchemy 简单笔记
flask-sqlalchemy 简单笔记 字数 阅读 评论 喜欢 flask-sqlalchemy SQLAlchemy已经成为了python世界里面orm的标准,flask是一个轻巧的web框架, ...
- Python学习--字典
在Python中通过名字来引用值的数据结构称为映射(mapping).字典是Python中唯一内建(Python解释器本身支持,不需要import)的映射类型.字典中的值没有特殊的顺序,都存储在一个特 ...
- Python学习-------------------三级菜单简单版
题目: 多级菜单 1.三级菜单 2.可依次选择进入的各子菜单 3.所需新知识点:列表.字典 ReadMe: 这个做循环,比较绕脑子 点开运行即可 Min ...
随机推荐
- go Rails 知识点,Concepts Series:url和parameter; 建立Rails App Templates;报错页面debug; counter_cache
Rails Concepts Series: https://gorails.com/series/rails-concepts 基本都是免费的 一些细小的知识点,很有帮助. URL和paramete ...
- 从工程角度看C++观察者模式中的接口是否需要提供默认的实现
在C++中,我们会经常用到观察者模式(回调模式,Delegate模式等,意思都一样),比如当Source中的某个参数发生了变化时,我们通过观察者模式进行回调通知,下面是一个例子: class Sour ...
- Day16 Django深入讲解
参考博客: http://www.cnblogs.com/yuanchenqi/articles/6083427.html http://www.cnblogs.com/yuanchenqi/arti ...
- 【Raspberry Pi】 小问题汇总
注: 此系列为自己之前所搭建网站内容. 目前入手树莓派2,将遇到的一些琐碎的问题记录在此. 1. 更改时区 查看日期命令:date 输入sudo dpkg-reconfigure tzdata后按提示 ...
- Algorithm3: 获得一个int数中二进制位为1 的个数
获得一个int数中二进制位为1 的个数 int NumberOfOne(int n){ int count = 0; unsig ...
- webapi返回不带引号的字符串,解决自动加双引号的问题
返回类型改为HttpResponseMessage类型 [Route("api/TestControllers/test")] [HttpGet] public HttpRespo ...
- Poj 1651 Multiplication Puzzle(区间dp)
Multiplication Puzzle Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10010 Accepted: ...
- Qt出现QObject::connect: Cannot queue arguments of type '******'的解决方法
一般出现这种情况都是自定义的类型进行型号槽连接的时候出现的,使用 假设自定义的类型是MyClass 使用qRegisterMetaType<MyClass>("MyClass&q ...
- SpringAnnotation之配置AnnotationXML文件
配置Annotation的环境:只需修改applicationContext.xml文件即可 1 2 3 4 5 6 7 8 9 10 11 <?xml version="1.0&qu ...
- linux安装mysql5.7.24
一.卸载 mysql安装有三种方式,包括二进制包安装(Using Generic Binaries).RPM包安装.源码安装.一般是前两种比较多 卸载方法参考Linux->卸载Mysql方法总结 ...