簡體   English   中英

列表中相同值的索引

[英]Indexing of Same Values in a List

由於list.index(x)將只返回值為 x 的第一個項目的列表中的索引。 有沒有辦法返回列表中相同值的每個索引。

例如,我有一個包含一些相同值的列表,例如:

mylist = [(A,8), (A,3), (A,3), (A,3)]

我要回:

index_of_A_3 = [1, 2, 3]
mylist = [(A,8), (A,3), (A,3), (A,3)]
def indices( mylist, value):
    return [i for i,x in enumerate(mylist) if x==value]

print indices(mylist, (A,3))
# [1, 2, 3]

將 (A,3) 替換為您想要的或使用 lambda。

[i for i in range(len(mylist)) if mylist[i]==(A,3)]

有點丑,但是:

index_of_A_3 = [i for i in range(len(mylist)) if mylist[i] == (A,3)]

更快速 !!!!

index_of_A_3= np.where(mylist == (A,3))[0]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM