python获取列表全部重复元素的索引位置
时间: 2023-10-19 17:09:56 浏览: 46
可以使用列表推导式和enumerate函数来获取列表中全部重复元素的索引位置:
```python
lst = [1, 2, 3, 4, 2, 5, 3, 6, 2]
indexes = [i for i, x in enumerate(lst) if lst.count(x) > 1]
print(indexes)
```
输出结果为:
```
[1, 4, 6, 8]
```
其中,列表推导式 `[i for i, x in enumerate(lst) if lst.count(x) > 1]` 遍历了列表中的每个元素,并判断该元素在列表中的出现次数是否大于1,如果是,则将该元素的索引位置加入到结果列表 `indexes` 中。最后输出结果列表即可。
相关问题
python中如何获取列表中几个重复元素的索引
如果你想要获取列表中某个元素在列表中的所有索引,可以使用列表推导式来实现。具体来说,可以遍历列表中的每个元素,如果该元素与目标元素相同,则将其索引添加到新列表中。示例如下:
```python
lst = [1, 2, 3, 2, 4, 2, 5]
target = 2
indices = [i for i, x in enumerate(lst) if x == target]
print(indices) # 输出 [1, 3, 5]
```
上述代码中,我们定义了一个列表 lst,其中包含了多个重复的元素。我们想要获取其中值为 2 的元素在列表中的所有索引,因此我们使用了列表推导式,在遍历列表时检查每个元素是否等于目标值,如果相等,则将其索引添加到新列表中。最终,我们输出了新列表,其中包含了所有匹配元素的索引。
python 找到列表中指定元素的索引
可以使用`index`方法来查找列表中指定元素的索引,如下所示:
```python
my_list = ['apple', 'banana', 'orange', 'pear']
index = my_list.index('orange')
print(index) # 输出:2
```
如果列表中不存在指定的元素,则会抛出`ValueError`异常。如果你想要查找多个相同元素的索引,则可以使用列表解析式,如下所示:
```python
my_list = ['apple', 'banana', 'orange', 'pear', 'orange']
indices = [i for i, x in enumerate(my_list) if x == 'orange']
print(indices) # 输出:[2, 4]
```
这里使用`enumerate`函数来获取每个元素的索引,然后使用列表解析式来查找所有等于指定元素的索引。