1. 程式人生 >實用技巧 >其它 >【python】index()方法與字典物件

【python】index()方法與字典物件


技術標籤:Python學習

index()方法

檢測字串中是否包含子字串 str,並返回索引值;
從列表中找出某個值第一個匹配項的索引位置。

字典物件能直接用index()方法嗎?

對於字典record={5: 3, 2: 3, 4: 1},執行index()方法,企圖找到value為1對應的索引值

【python】index()方法與字典物件


報錯:字典物件,不能直接使用index()方法
搜尋得知:index()方法的使用物件為列表/字串

【python】index()方法與字典物件

字典物件如何使用index()方法?

由前文知,字典物件本身並不存在index()方法,列表型別存在index()方法。若想找到字典中指定value/key對應的索引值,應想辦法將字典型別轉化為列表型別。

1.字典物件的values()方法和keys()方法

【python】index()方法與字典物件

2.轉化為列表物件

【python】index()方法與字典物件


此時得到字典中key和value的列表,分別可以使用index()方法

【python】index()方法與字典物件

實戰

現在要做的事:找到record字典中,value為1對應的key值

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

1.先找到value為1對應的索引值

【python】index()方法與字典物件


‘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的值

【python】index()方法與字典物件


得到value為1對應的key值為4


list(record.keys())[list(record.values()).index(1)]