说我有一个清单:
D = [str1, str2, str3, str4, str5, str6, ... str100]
我想使用 [str4 str5]
作为关键字搜索列表,并返回关键字最后一个元素的索引。在这种情况下,我想返回 4
,因为 str5
是我的关键字中的最后一个元素,其搜索列表中的索引(即D
)为4。
有没有有效的方法呢?我想过使用for循环,但这需要花费太多时间,因为我有一个非常大的列表。列表理解是解决方案吗?
编辑:
要回答Ben的问题,我需要搜索 [str4 str5]
作为一个集合,因为我想确保这两个字符串在一起。 [str5]
可能会在未来 str4
之前出现{{1}}。
答案 0 :(得分:-1)
确定是否存在第一个值,然后确定第二个值是否跟随它。如果值不存在或者值不是按顺序存在,则需要应用所需的逻辑。
x = ['str4', 'str5']
if d.index(x[0]) + 1 == d.index(x[1]):
return d.index(x[1])