[英]Find the index of a list element in Python
我怎么能找到某個索引來確定其中一個元素在集合中的位置。 所以我想找到(2.0, 2.0, 152)
在sets
列表中的位置,這是第 5 個索引。 有沒有我可以用來實現的 function ?
from itertools import groupby
from itertools import accumulate
import itertools
#Configs
Lower = [round(x * 0.5,1) for x in range(4,23)] #ideal = (4,13) Lower and upper boundary values
Upper = [round(x * 0.5,1) for x in range(4,23)] # ideal between (10-23)
number = [round(x *0.5,5) for i in range(100, )] #used for calculations with stand deriv and linear reg
list_set = [Lower, Upper, number]
sets = []
for element in itertools.product(*list_set):
print(element)
sets.append(element)
您可以通過兩種方法 go 從 Python 中的數組中查找元素的索引。
第一種也是最直接的方法是使用任何列表的.index()
方法,該方法返回指定值所在的索引。 舉個例子:
list = [123, 417, 098]
print(list.index(417))
您可以在此處看到它將打印一個,因為這是417
在list
數組中所在的索引。 但是,請記住,如果指定的值不存在,您可能會收到錯誤消息。
第二種更難的方法是自己遍歷數組。 舉個例子:
list = [123, 417, 098]
def findElement(array, element):
for index in range(len(array)):
if (array[index] == element):
return index
print(findElement(list, 417))
我們在這里所做的是定義一個方法,該方法將數組和元素作為參數,然后遍歷列表的每個索引,直到該索引處的值是指定的元素。 當值匹配時,它將返回所述索引。 如果沒有任何值會匹配,它不會返回任何東西。
第二種方法的優點是,如果列表中沒有這樣的元素,它不會拋出錯誤,但是,它也有點難以設置。
try:
print(sets.index(element))
except:
print('not found')
如果你要使用更好的字典索引,它可以在 O(1) 時間內檢索你的索引。雖然構造可能需要 O(n) 時間
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.