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%的人还看了以下文章

  • JSP一次上传多个文件(基于jspSmartUpload)

    支持中文的jsp文件上传组件:jspSmartUpload.jar下载 可以一次上传多个文件 upload.html <html> <head> <title>网页设计:文件上传</title> <meta http-equiv=”Content-Type” content=”text/html; cha…

    编程开发 2021年11月25日
    2.7K0
  • 单元测试工具JUnit介绍及使用,单元测试快速入门教程五

    单元测试工具JUnit介绍及使用,单元测试快速入门教程五单元测试工具JUnit介绍及使用,单元测试快速入门教程五单元测试工具JUnit介绍及使用,单元测试快速入门教程五单元测试工具JUnit介绍及使用,单元测试快速入门教程五

    JUnit是一个开放源代码的测试框架,用在编写和运行可重复的测试脚本之上,是用于Java语言编写的面向对象程序的单元测试工具。JUnit框架功能强大,目前已经成为Java单元测试的事实标准,基本上能满足日常的测试要求。 1.Junit主要特性 (1)可以将测试代码和产品代码分别开发,便于管理。 (2)针对某一个类的测试代码,以较少的改动便可以应用    另一…

    2018年4月18日 编程开发
    11.8K0
  • JS截取字符串方法详解:前面/中间/后面

    JS截取字符串方法,JS的match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 js截取字符串中间的内容 var str = “aaabbbcccdddeeefff”; str = str.match(/aaa(\S*)fff/)[1]; alert(str);//结果bbbcccdddeee js截取某个字符串前面的内容 var…

    2023年1月5日
    8.9K0
  • Ubantu为应用程序添加桌面图标

    Ubantu为应用程序添加桌面图标Ubantu为应用程序添加桌面图标Ubantu为应用程序添加桌面图标Ubantu为应用程序添加桌面图标

    按要求配置应用程序参数,为应用程序添加桌面图标,实现系统快捷启动。 Ubuntu桌面的左边(默认在左边)有一个启动器,类似于window的任务栏。在Ubuntu18中叫dock(船坞),有时候又叫收藏夹。本文统一叫做启动器 在使用 Ubuntu 操作系统进行开发过程中,由于Ubuntu 系统其操作方式主要通过命令行终端进行交互,故启动软件也一般通过终端键入应…

    2022年9月1日 编程开发
    8.4K0
  • JavaBean的规范,javaBean中属性为什么要定义成private?

    JavaBean就是遵循一定规范、完成某种功能的可重复使用的Java类。

    2018年10月23日
    15.7K0
  • 上机实战六 Servlet的开发 

      建议学时:6 2学时 一、编写Servlet,FirstServlet.java 通过URL访问该Servlet,显示这是我的第一个Servlet。 二、使用servlet实现求圆的面积,在r4.jsp页面提交表单,servlet负责接收用户请求、计算并显示圆的面积。 具体页面效果如下: 三、jsp+javabean+servlet实现求三角形的面积和周…

    2018年11月13日
    11.5K0

发表回复

登录后才能评论