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)
江山如画的头像江山如画管理团队
上一篇 2020年1月22日 上午11:15
下一篇 2020年1月22日 下午5:24

99%的人还看了以下文章

  • js中var a=b=1和var a=1,b=1的区别

    js中一次性定义多个变量的时候,可以用:var a=1,b=1这种中间用逗号隔开的方式,但有些时候为了省事,直接定义var a=b=1。 那这两种写法方式最后效果是一样的吗?有没有什么区别呢?请大家看下面的范例: 1、用var a=b=1的方式 由上图可以明显看出来,变量b的作用域已经是全局的了,因为在函数外可以调用到(可以正常的输出变量)。 2、用var …

    2022年3月19日
    5.1K0
  • 第三章 JSP技术1

    了解JSP相关技术
    掌握JSP基本语法
    掌握JSP指令标识和动作标识
    掌握JSP的内置对象及使用

    2018年2月2日
    7.9K0
  • 最清楚的过拟合(Overfitting)、欠拟合讲解

    问题的产生 当我们构建模型时,总会希望假设空间参数尽可能多,系统越复杂,拟合得越好嘛!我们还希望我们的优化算法能使我们的模型产生的损失函数的值尽可能小(即我们的假设空间能够贴合每一个训练样本点)。但这样真的好吗?奥卡姆剃刀貌似又胜利了。然而假设我们的模型达成了上述的情况,有很大概率产生一个ML界非常令人头疼的一件事:过拟合(Overfitting)。 欠拟合…

    2022年9月21日
    9.4K0
  • 网络编程 ASP.NET(C#)学习笔记三:数据类型-引用类型

    C#中数据类型主要分为两大类:值类型和引用类型。本节课主要讲解引用类型的分类及C#内置引用类型object 和string。 引用类型包括:类(class、object、string)、接口(interface)、数组(array)、代理(delegate)类包括:用户自定义的类、object基类、字符串类,其中object 、string为C#内置引用类型…

    2018年1月30日
    7.5K0
  • JSP分页思想—核心代码

    try{condition=”select * from employee_info”; sql=conn.createStatement(); rs=sql.executeQuery(condition); int intPageSize; //一页显示的记录数 int intRowCount; //记录总数 int intPageCount; //总页数…

    2019年10月30日
    5.3K0
  • python 循环语句的应用:水仙花数判断及爱因斯坦阶梯编程

    一、水仙花数判断程序 1.任务内容: 水仙花数是一个三位整数,如153是一个水仙花数,是因为该数的百位的立方、十位的立方、个位的立方和等于该数本身,如下所示: 2.程序编写要求: 使用for语句完成; 统计水仙花数个数的值保存到变量中,要求自动进行统计 •输出结果如下所示: 153 是水仙数370 是水仙数371 是水仙数407 是水仙数三位数中有4个水仙数…

    2022年5月11日
    8.8K1

发表回复

登录后才能评论