在 Python 中獲取匹配索引


給出兩個列表。我們需要找到第一個列表中的元素的索引,其值與第二個列表中的元素匹配。

帶索引

我們只需按照以下步驟獲取第二個列表中元素的值,然後從第一個列表中提取相應的索引。

示例

 現場演示

listA = ['Mon','Tue', 'Wed', 'Thu', 'Fri']
listB = ['Tue', 'Fri']
# Given lists
print("The given list:\n ",listA)
print("The list of values:\n ",listB)
# using indices
res = [listA.index(i) for i in listB]
# Result
print("The Match indices list is : ",res)

輸出

執行上述程式碼,得到以下結果 -

The given list:
['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
The list of values:
['Tue', 'Fri']
The Match indices list is : [1, 4]

帶列舉和集合

我們將設計一個 for 迴圈,它將使用 enumerate 提取所有元素,然後將其與成對的值匹配。最後,它將提取匹配的索引。

示例

 現場演示

listA = ['Mon','Tue', 'Wed', 'Thu', 'Fri']
listB = ['Tue', 'Fri']
# Given lists
print("The given list:\n ",listA)
print("The list of values:\n ",listB)
# using enumerate
res = [key for key, val in enumerate(listA)
if val in set(listB)]
# Result
print("The Match indices list is : ",res)

輸出

執行上述程式碼,得到以下結果 -

The given list:
['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
The list of values:
['Tue', 'Fri']
The Match indices list is : [1, 4]

更新於: 04-Jun-2020

496 次瀏覽

開啟你的 職業生涯

完成課程後獲得認證

開始學習
廣告