程序填空题:通信录-合并字典
以下程序用于实现帮助小明创建一个通信录。
小明是这么做的:
1. 先根据三位舍友的联系方式创建一个字典dicTXL;
1. 然后将跟隔壁舍长已经建好的字典dicOther合并进自己的通信录;
1. 合并之后,小明又打算给通信录增加一列“微信号”,为此他询问了相关同学的微信号,并存储在字典dicWX中,然后合并进自己的通信录;
创建好通信录dicTXL后,测试如下功能:
1. 将"大王"的原手机号更改为“13914000004”
1. 输入一个姓名,查找对应同学的手机号、QQ号或者微信号,如果输入的姓名不存在,则返回“没有该同学的联系方式”。
**可用以下输入输出样例测试程序是否正确**
##### 输入样例1:
先输入4个同学的姓名和微信号,每个字符串占一行,最后一行输入要查找的同学姓名
in
小新
xx9907
小刚
gang1004
大王
jack_w
大刘
liu666
大王
##### 输出样例1:
能找到该同学姓名
out
大王的手机号:13914000004,QQ号:18191230002,微信号:jack_w。
##### 输入样例2:
先输入4个同学的姓名和微信号,每个字符串占一行,最后一行输入要查找的同学姓名
in
小新
xx9907
小刚
gang1004
大王
jack_w
大刘
liu666
小陈
##### 输出样例2:
找不到该同学姓名
out
没有该同学的联系方式
**请复制以下代码在IDLE中完成填写并调试,正确后再填入本题空白处。**
c++
#根据3位舍友的联系方式创建一个字典dicTXL
dicTXL={"小新":{"手机":"13913000001","QQ":"18191220001"},
"小亮":{"手机":"13913000002","QQ":"13913000002"},
"小刚":{"手机":"13913000003","QQ":"18191220003"}}
#隔壁舍长创建一个字典dicOther
dicOther={"大刘":{"手机":"13914000001","QQ":"18191230001"},
"大王":{"手机":"13914000002","QQ":"18191230002"},
"大张":{"手机":"13914000003","QQ":"18191230003"}}
#将字典dicOther合并进dicTXL
#询问得到4位同学的微信号,保存在字典dicWX
dicWX=
for i in range(4):
name=input()
wx=input()
#将字典dicWX合并到字典dicTXL中,不在dicWX中的同学默认以手机号码为微信号
for k,v in :
v["微信"]=
#将"大王"的原手机号修改为新的手机号
="13914000004"
#输入姓名,查找并输出对应同学的手机号、QQ号和微信号,
#如果输入的姓名不存在,则输出"没有该同学的联系方式"
name=input()
if name in :
s="{}的手机号:{},QQ号:{},微信号:{}。".format(name,dicTXL[name]["手机"],dicTXL[name]["QQ"],dicTXL[name]["微信"])
else:
s="没有该同学的联系方式"
print(s)
答案:
第1空:dicTXL.update(dicOther)
第2空:{}
第3空:dicWX[name]=wx
第4空:dicTXL.items()
第5空:dicWX.get(k,v["手机"])
第6空:dicTXL["大王"]["手机"]
第7空:dicTXL.keys()
小明是这么做的:
1. 先根据三位舍友的联系方式创建一个字典dicTXL;
1. 然后将跟隔壁舍长已经建好的字典dicOther合并进自己的通信录;
1. 合并之后,小明又打算给通信录增加一列“微信号”,为此他询问了相关同学的微信号,并存储在字典dicWX中,然后合并进自己的通信录;
创建好通信录dicTXL后,测试如下功能:
1. 将"大王"的原手机号更改为“13914000004”
1. 输入一个姓名,查找对应同学的手机号、QQ号或者微信号,如果输入的姓名不存在,则返回“没有该同学的联系方式”。
**可用以下输入输出样例测试程序是否正确**
##### 输入样例1:
先输入4个同学的姓名和微信号,每个字符串占一行,最后一行输入要查找的同学姓名
in
小新
xx9907
小刚
gang1004
大王
jack_w
大刘
liu666
大王
##### 输出样例1:
能找到该同学姓名
out
大王的手机号:13914000004,QQ号:18191230002,微信号:jack_w。
##### 输入样例2:
先输入4个同学的姓名和微信号,每个字符串占一行,最后一行输入要查找的同学姓名
in
小新
xx9907
小刚
gang1004
大王
jack_w
大刘
liu666
小陈
##### 输出样例2:
找不到该同学姓名
out
没有该同学的联系方式
**请复制以下代码在IDLE中完成填写并调试,正确后再填入本题空白处。**
c++
#根据3位舍友的联系方式创建一个字典dicTXL
dicTXL={"小新":{"手机":"13913000001","QQ":"18191220001"},
"小亮":{"手机":"13913000002","QQ":"13913000002"},
"小刚":{"手机":"13913000003","QQ":"18191220003"}}
#隔壁舍长创建一个字典dicOther
dicOther={"大刘":{"手机":"13914000001","QQ":"18191230001"},
"大王":{"手机":"13914000002","QQ":"18191230002"},
"大张":{"手机":"13914000003","QQ":"18191230003"}}
#将字典dicOther合并进dicTXL
#询问得到4位同学的微信号,保存在字典dicWX
dicWX=
for i in range(4):
name=input()
wx=input()
#将字典dicWX合并到字典dicTXL中,不在dicWX中的同学默认以手机号码为微信号
for k,v in :
v["微信"]=
#将"大王"的原手机号修改为新的手机号
="13914000004"
#输入姓名,查找并输出对应同学的手机号、QQ号和微信号,
#如果输入的姓名不存在,则输出"没有该同学的联系方式"
name=input()
if name in :
s="{}的手机号:{},QQ号:{},微信号:{}。".format(name,dicTXL[name]["手机"],dicTXL[name]["QQ"],dicTXL[name]["微信"])
else:
s="没有该同学的联系方式"
print(s)
答案:
第1空:dicTXL.update(dicOther)
第2空:{}
第3空:dicWX[name]=wx
第4空:dicTXL.items()
第5空:dicWX.get(k,v["手机"])
第6空:dicTXL["大王"]["手机"]
第7空:dicTXL.keys()