不记得字典语法知识的可以翻我主页^V^
【要求】
定义一个电话簿,字典里头设置以下联系人:
'mayun':'13309283335',
'zhaolong':'18989227822',
'zhangmin':'13382398921',
'Gorge':'19833824743',
'Jordan':'18807317878',
'Curry':'15093488129',
'Wade':'19282937665'
现在输入人名,查询他的号码
【加强项-----如何通过电话号找人呢?】
【练习要求】
针对知识点字典定义、访问安排的本实例。要求实现:输入人名,查询其号码
【重要步骤提示】
- 字典定义
- 字典访问keys()
- 编写程序代码如下
#定义初始值,便于后续查找
dic1={'齐夏':'13309283335','陈俊南':'18989227822','甜甜':'13382398921','章晨泽':'19833824743','乔家劲':'18807317878','燕知春':'15093488129','楚天秋':'19282937665'}
dic2 = {}
for i,j in dic1.items():dic2[j] = i
#循环列表查询(查不到接着查)
while True:#引导用户查询name=input('请输入名字:')a = input('电话号码:')#有记录if name in dic1:#输出电话号print(dic1[name])#结束查找# breakif a in dic2.keys():print(dic2[a])break#无记录else:print('您查找的用户暂不存在')
(这里把加强项的问题也一起实现了^V^,主要实现步骤为dic2 = {} for i,j in dic1.items(): dic2[j] = i)
#定义初始值,便于后续查找 dic1={'齐夏':'13309283335','陈俊南':'18989227822','甜甜':'13382398921','章晨泽':'19833824743','乔家劲':'18807317878','燕知春':'15093488129','楚天秋':'19282937665'} dic2 = {} for i,j in dic1.items():dic2[j] = i #循环列表查询(查不到接着查) while True:#引导用户查询name=input('请输入名字:')a = input('电话号码:')#有记录if name in dic1:#输出电话号print(dic1[name])#结束查找# breakif a in dic2.keys():print(dic2[a])break#无记录else:print('您查找的用户暂不存在')
注:因为在字典的使用中,我们只能通过key来找value,不能通过value来找key-----(理由:key唯一但value不唯一)
所以我们在不想再次定义一边字典时,可以通过循环遍历字典事先将字典中key和value交换
【代码思路】
将输入的值与字典的值比对,如果相等则输出,否则找不到。
欢迎指错
关注我更新更多初学实例