python 字典使用实例:创建通信录并完成修改、查找操作

练习目的:巩固python 字典的创建,合并,修改及使用。

学了python字典后,同学们想创建一个自己的通信录,小明是这么做的:

  1. 先根据三位舍友的联系方式创建一个字典dicTXL
  2. 然后将隔壁舍长已创建好的字典dicOther合并进自己的通信录
  3. 合并之后,小明又打算给通信录增加一列“微信号”,为此他询问了相关同学的微信号并存储在了字典dicWX中,然后合并进了通信录,而没有询问到微信号的同学使用手机号做为默认微信号。

完成以上通信录,并测试:

  1. 将‘大王’的手机号更改为13914000004
  2. 输入姓名查找对应同学的手机号,QQ号,微信号,如果输入的姓名不存在,则返回“没有该同学的联系方式”。

代码:

dicTXL={'小新':{'手机号':13913000001,'QQ':18191220001},'小亮':{'手机号':13913000002,'QQ':18191220002},'小刚':{'手机号':13913000003,'QQ':18191220003}}
dicOther={'大刘':{'手机号':13914000001,'QQ':18191230001},'大王':{'手机号':13914000002,'QQ':18191230002},'大张':{'手机号':13914000003,'QQ':18191230003}}
dicMy=dict(dicTXL,**dicOther)
print(dicTXL)
print(dicOther)
print(dicMy)
dicWX={'小新':{'微信':'xx9907'},'小刚':{'微信':'gang1004'},'大王':{'微信':'jack_w'},'大刘':{'微信':'liu666'}}
print(dicWX)
for k,v in dicMy.items():
    if k in dicWX:
       dicMy[k]['微信']=dicWX[k]['微信']
    else:
        dicMy[k]['微信']=dicMy[k]['手机号']

print(dicMy)
dicMy['大王']['手机号']=13914000004
print(dicMy)
name=input("请输入要查找的学生姓名:")
if name in dicMy:
    print(dicMy[name])
else:
    print("没有该同学的联系方式")

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/4633.html

(48)
江山如画的头像江山如画管理团队
Java GUI编程高级实例二:弹出式菜单及添加工具栏
上一篇 2020年1月22日 上午11:15
python 字典的使用案例二:求平均分,并按平均分由高到低输出选手编号和最后得分
下一篇 2020年1月22日 下午5:24

99%的人还看了以下文章

  • 图片上传并压缩源码免费下载(等比例压缩或者原尺寸压缩)-java

    项目开发时,需要手机拍照,然后上传图片,因为项目记录数非常多,每条记录需要3张照片,而手机相机越来越好,分辨率也高,就要压缩后再上传。 中国网页设计今天分享的图片上传并压缩方法支持等比例压缩或者原尺寸压缩两种。 可自行设置图片质量参数quality,能够同时处理jpg和png格式,也可把PNG转jpg或jpg转PNG。 宽度和高度可以根据项目实际需求自行设置…

    2019年6月24日
    13.9K0
  • Java向mysql数据库插入datetime类型数据实例(精)

    在Mysql数据库中日期跟时间有两种: 1、date类型,date类型也就是我们常见的储存yyyy-MM-dd类型的日期,它不能储存时间,也就是只能储存日期, 2、dateitme就是可以储存日期同时也可以储存时间。 datetime可以保存1000-01-01到 9999-12-31的日期。 上面mysql数据库中birthday字段类型设置的是datet…

    2018年5月2日
    22.7K0
  • python 中time.gmtime()与localtime()的区别

    gmtime转换的时间是UTL时间,与北京时间相差了8个小时 import time print(time.time()) print(time.strftime(“%Y-%m-%d 星期%w %H:%M:%S”,time.localtime())) print(time.strftime(“%Y-%m-%d 星期%w %H:%M:%S”,time.gmti…

    2022年7月15日
    11.8K0
  • JSP三层架构开发学生管理系统源码-dao、entity、service、servlet

    JSP三层架构开发学生管理系统源码-dao、entity、service、servletJSP三层架构开发学生管理系统源码-dao、entity、service、servletJSP三层架构开发学生管理系统源码-dao、entity、service、servletJSP三层架构开发学生管理系统源码-dao、entity、service、servlet

    表示层:MVC中的视图层和控制器层,前端通常为html css js jsp文件,后端例如Servlet文件,调用业务逻辑层业务逻辑层(Service):接受表示层的请求,先进行逻辑处理,后调用数据逻辑层,(增:查+增) 数据访问层(Dao):直接访问数据库的操作 通过三层架构,将表示层请求传递到数据访问层,数据访问层将结果返回至表示层 具体流程 开发环境:…

    2021年5月1日 编程开发
    5.0K0
  • 已知列表[1,2,3,4,5],让列表的每个元素加1,把结果不能被2整除的元素筛选出来

    list1=[1,2,3,4,5] func=lambda x:x+1 r=map(func,list1) def odd(n): return n%2!=0 result=filter(odd,list(r)) list(result) 知识点一:Python map() 函数 map() 会根据提供的函数对指定序列做映射。 第一个参数 function …

    2022年7月18日
    1.8K0
  • 免费网站打包APP,网址打包APP教程 – HBuilder

    免费网站打包APP,网址打包APP教程 – HBuilder免费网站打包APP,网址打包APP教程 – HBuilder免费网站打包APP,网址打包APP教程 – HBuilder免费网站打包APP,网址打包APP教程 – HBuilder

    网上有很多将网站在线打包成APP的网站,都是收费,其实网站只要做好移动端优化,或本身就是响应式网站,只需要简单的几个步骤就能把网站打包成简洁的APP。 相应工具很多,中国网页设计推荐使用:HBuilder:官网dcloud.io 会做网页就会制作APP 先学习如何制作APP   VS   先学的制作网页 其实很多APP都是利用网页打包成的… 利用HBuild…

    2019年6月24日 编程开发
    15.4K0

发表回复

登录后才能评论