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

  • 如何设计单元测试用例,单元测试快速入门教程四

    测试人员在实际工作中根据不同覆盖要求设计面向代码的单元测试用例,运行测试用例后至少应实现如下覆盖需求: 对程序模块的所有独立的执行路径至少覆盖一次; 对所有的逻辑判定,真假两种情况至少覆盖一次; 在循环的边界和运行界限内执行循环体; 测试内部数据结构的有效性等。 至少应设计覆盖如下需求的基于功能的单元测试用例: 测试程序单元的功能是否实现; 测试程序单元性能…

    2018年4月18日
    5.0K0
  • java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)

    java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)

      串口通信在工程应用中很常见。 上位机与下位机 在上位机与下位机通讯过程中常通过有线的串口进行通信,在低速传输模式下串口通信得到广泛使用。 通常上位机指的是PC,下位机指的是单片机或者带微处理器的系统。下位机一般是将模拟信号经过AD采集将模拟量转换为数字量,下位机再经过数字信号处理以后将数字信号通过串口发送到上位机,相反上位机可以给下位机发送一些指令或者信…

    2023年1月7日 • 编程开发
    8.9K0
  • 第2课:编写第一个C语言程序

      用C语言语句编写的程序称为C程序或C源程序。 下面编写第一个C语言程序,这个程序是在Visual C++ 环境下编译通过的。 Microsoft Visual C++(简称Visual C++、MSVC、VS或VC)是微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。 【例1.1】用C语言编写一个…

    2020年4月5日
    13.9K0
  • python 初学者练手上机实操七-列表、元组练习

    一、定义列表fruits 其中元素包[‘苹果’,’梨’,’香蕉’,’菠萝’,’草莓’,’桔子’,’橙子’,’木瓜’,’西瓜’,’哈密瓜’,’香瓜’,使用循环语句输出列表中的元素,但不输出菠萝。 要求: 1、新建一个“list.py”文件。 2、编写程序。 3、调试程序。 4、排除错误。 二、创建一个名称为list1的空列表 创建一个包含整形数据1,2,3的l…

    2023年6月15日
    3.4K0
  • 最全的数据结构排序算法实现及比较

    冒泡排序 类似暴力破解,1 – n 个,每个都比较一次。完成排序 public void sort(int[] arr) { int len = arr.length; for (int i = 0; i < len; i++) { for (int j = i + 1; j < len – 1; j++) { if (arr[i] …

    2020年10月13日
    9.9K0
  • %matplotlib inline使用详解

    #内嵌画图 %matplotlib inline import matplotlib # 注意这个也要import一次 import matplotlib.pyplot as plt myfont = matplotlib.font_manager.FontProperties(fname=r’C:/Windows/Fonts/msyh.ttf’) # 这一…

    2023年1月13日
    3.7K0

发表回复

登录后才能评论