【python】index()方法与字典对象

index()方法

检测字符串中是否包含子字符串 str,并返回索引值;
列表中找出某个值第一个匹配项的索引位置。

字典对象能直接用index()方法吗?

对于字典record={5: 3, 2: 3, 4: 1},执行index()方法,企图找到value为1对应的索引值
在这里插入图片描述
报错:字典对象,不能直接使用index()方法
搜索得知:index()方法的使用对象为列表/字符串
在这里插入图片描述

字典对象如何使用index()方法?

由前文知,字典对象本身并不存在index()方法,列表类型存在index()方法。若想找到字典中指定value/key对应的索引值,应想办法将字典类型转化为列表类型。

1.字典对象的values()方法和keys()方法

在这里插入图片描述

2.转化为列表对象

在这里插入图片描述
此时得到字典中key和value的列表,分别可以使用index()方法
在这里插入图片描述

实战

现在要做的事:找到record字典中,value为1对应的key值

record={5: 3, 2: 3, 4: 1}

1.先找到value为1对应的索引值

在这里插入图片描述
‘1’在values列表[3,3,1]的索引值为2
所以!value‘1’对应的key值,在keys列表[5,2,4]中的索引值也为2

2.找到index为2对应的key值

注意,字典对象不具备【根据索引找列表中对应的值】这一功能。
record[2]执行效果为:找到record字典中【key值为2的】value值
先将record.keys()转化为列表对象
再使用list[index]找到list列表中序列为index的值
在这里插入图片描述
得到value为1对应的key值为4


list(record.keys())[list(record.values()).index(1)]
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值