【python】index()方法與字典物件
阿新 • 來源:網路 • 發佈:2021-02-14
技術標籤:Python學習
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)]
