index()将给出列表中第一次出现的项目。是否有一个巧妙的技巧可以返回元素列表中的所有索引?
index()
您可以使用列表推导:
indices = [i for i, x in enumerate(my_list) if x == "whatever"]
迭代器为列表中的每个项目enumerate(my_list)生成对(index, item)。使用i, x作为循环变量目标将这些对解包到索引i和列表项x中。我们过滤到所有x符合我们标准的内容,并选择i这些元素的索引。
enumerate(my_list)
(index, item)
i, x
i
x