为了账号安全,请及时绑定邮箱和手机立即绑定

检查用户输入和具有多个值的字典键之间的匹配

检查用户输入和具有多个值的字典键之间的匹配

呼如林 2021-09-01 14:17:24
如果我想检查checkPlayer函数中输入的参数是否与键匹配dict1 并返回整个对象或相应键的特定值,我将如何更改此代码?dict1 = {'Messi' : ('Argentina','Barcelona'), 'Ronaldo' : ('Portugal','Juventus'), 'Robben': ('Netherlands','Bayern')}def checkPlayer(plyr):    for x in dict1:        if plyr == x:           print(x)checkPlayer('Messi')我主要对为什么打印x会打印玩家姓名而不是整个对象感到困惑。如果找到匹配项,我将如何打印整个对象,或者更具体地说,仅打印国籍或团队。不太确定如何使用 for 循环访问字典中的索引,它不像列表那样直观:/
查看完整描述

3 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

你的对象是一个键:值键是“梅西”,值是“阿根廷”,“巴塞罗那”但是在你的打印语句中你只打印对象的名称将只返回键而没有值
来访问你可以访问的值使用 get() 或字典中对象的索引

得到你想要的结果使用这个:

print plyr,':',dict1[plyr]


查看完整回答
反对 回复 2021-09-01
?
神不在的星期二

TA贡献1963条经验 获得超6个赞

您可以使用以下代码:


dict1 = {'Messi' : ('Argentina','Barcelona'), 'Ronaldo' : ('Portugal','Juventus'), 'Robben': ('Netherlands','Bayern')}


checkPlayer = 'Messi'

print (dict1.get(checkPlayer,'Player not found')) # 'Player not found' will be returned if checkPLayer is not in the dict1.keys()

#result --> ('Argentina', 'Barcelona')


查看完整回答
反对 回复 2021-09-01
  • 3 回答
  • 0 关注
  • 194 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号