在列表中查找字符串的索引

加百列

我有两个具有相同数量元素的列表,所有元素都是字符串。这些字符串是相同的集合,但是在每个列表中顺序不同,没有重复。

list_a = ['s1', 's2', 's3', 's4', 's5', ...]
list_b = ['s8', 's5', 's1', 's9', 's3', ...]

我需要遍历其中的每个元素list_a并找到list_b包含相同元素的索引我可以使用两个嵌套的for循环来做到这一点,但必须有一种更好/更有效的方法:

b_indexes = []
for elem_a in list_a:
    for indx_b, elem_b in enumerate(list_b):
        if elem_b == elem_a:
            b_indexes.append(indx_b)
            break
特里

如果没有重复项,则可以使用list.index()

list_a = ['s1', 's2', 's3', 's4', 's5']
list_b = ['s8', 's5', 's1', 's9', 's3']
print [list_b.index(i) for i in list_a]

您只需要使用一个for循环,因为您已经说过list_a中的字符串也出现在list_b中,因此无需if elem_b == elem_a:遍历第二个列表。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章