gpt4 book ai didi

python - 与另一个列表进行比较,确定列表中所有元素的索引

转载 作者:行者123 更新时间:2023-12-04 11:09:41 25 4
gpt4 key购买 nike

例如我有一个列表 A :

A = [100, 200, 300, 200, 400, 500, 600, 400, 700, 200, 500, 800]
我有列表 B :
B = [100, 200, 200, 500, 600, 200, 500]
我需要识别 B 中元素的索引与 A 相比
我试过了:
list_index = [A.index(i) for i in B]
它返回:
[0, 1, 1, 5, 6, 1, 5]
但我需要的是:
[0, 1, 3, 5, 6, 9, 10]
我该如何解决?

最佳答案

您可以遍历 A 的枚举跟踪索引并产生它们匹配的值:

A = [100,200,300,200,400,500,600,400,700,200,500,800]
B = [100,200,200,500,600,200,500]

def get_indices(A, B):
a_it = enumerate(A)
for n in B:
for i, an in a_it:
if n == an:
yield i
break

list(get_indices(A, B))
# [0, 1, 3, 5, 6, 9, 10]
这避免了使用 index()多次。

关于python - 与另一个列表进行比较,确定列表中所有元素的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68520738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com