You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中查找列表B元素在列表A中对应索引位置的解决方案

报错原因
  • 方法调用逻辑完全写反:list.index(x)的作用是返回调用该方法的列表内,参数x第一次出现的索引。你的代码写的是B.index(A),相当于在只有2个元组元素的B列表里查找整个A列表,B中不存在这个元素,必然触发ValueError。
  • 需求逻辑颠倒:你需要查询的是B中每个元素在A里的位置,不是A在B里的位置。
  • 存在无效代码:导入了numpy但全程没有使用。
修复代码

Python列表默认索引从0开始计数,直接查询B中元素在A里的0基索引结果为[2,7];你给出的期望输出[3,8]是从1开始计数的位置结果,匹配期望输出的可运行代码如下:

A = [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
B = [(0, 2), (2, 1)]
# 遍历B中每个元素,查询A中对应索引后+1,匹配从1计数的要求;需要0基索引删掉+1即可
C = [A.index(item) + 1 for item in B]
print("C =", C)

运行输出:

C = [3, 8]

内容的提问来源于stack exchange,提问作者Wiz123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 14:27:18