我正在做一个简单的查找
if xo.st in sts:
#...
如果满足条件,我需要获取 sts 中元素的索引(sts 是列表或元组)。这需要很快(这是一个很大的列表)。什么是最好的解决方案?
我正在做一个简单的查找
if xo.st in sts:
#...
如果满足条件,我需要获取 sts 中元素的索引(sts 是列表或元组)。这需要很快(这是一个很大的列表)。什么是最好的解决方案?
关于什么:
if xo.st in sts:
print sts.index(xo.st)
xo.st
这将返回in的第一个索引sts
首先想到的是
list.index(xo.st)
该index
方法存在于列表和元组中,是您所需要的。ValueError
当值不在列表中时,它会引发 a 。如果这不是你想要的,你可以做这样的事情:
>>> def get_index(value, sequence):
... try:
... return sequence.index(value)
... except ValueError:
... return None
...
>>> l = [1,2,3,4,5]
>>> print get_index(1, l)
0
>>> print get_index(2, l)
1
>>> print get_index(9, l)
None