无法获取列表项的索引

2024-10-01 00:29:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两张单子:

list1= [1, 3, 8, 14, 20]

list2= [1, 2, 7, 8, 14, 20]

我得到了这两个列表之间的共同点如下: commonItems=list(set(list1).intersection(list2))

现在随机挑选一个常见项目:

pick=random.sample(commonItems,1)

现在,当我尝试在上面的一个列表中标识拾取的项索引时: PickedItemIndex=list1.index(pick)

我有个错误: ValueError:[8]不在列表中

即使如您所见,列表1中确实存在第8项

有什么问题? 我是一个新的Python。先谢谢你。你知道吗


Tags: sample项目列表random标识list单子set
2条回答

问题是变量pick的类型是list。你知道吗

您需要将int传递给index命令:

In [314]: list1.index(pick[0])
Out[314]: 4

发生错误的原因是变量“pick”是一个列表。 下面的代码运行时不会出错:

pick=random.sample(commonItems,1)
PickedItemIndex=list1.index(pick[0])

pick[0]是列表“pick”的第一项(仅包含1个元素)

相关问题 更多 >