python如何返回包含相同元素的列表中元素的索引
时间: 2023-12-02 19:03:30 浏览: 89
如果你想返回包含相同元素的列表中所有素的索引,可以使用列表推导来实现。以下示例:
```python
def find_indexes(lst, element):
return [i for i, value in enumerate(lst) if value == element]
my = [1, 2, , 2, 4 2, 5]
element =
indexes = find_indexes(my_list, element)
print(indexes)
```
输出:
```
[1, 3, 5]
```
在这个示例中,`find_indexes()` 函数接受一个列表 `lst` 和一个元素 `element`,并返回包含所有匹配元素的索引的列表。列表推导式 `[i for i, value in enumerate(lst) if value == element]` 遍历列表 `lst` 中的每个元素,如果元素等于 `element`,则将索引 `i` 添加到结果列表中。
我们使用 `[1, 2, 3, 2, 4, 2, 5]` 这个列表和 `2` 这个元素进行示例调用,并将返回的索引列表 `[1, 3, 5]` 打印出来。
相关问题
python找出列表中所以相同元素的索引
在 Python 中可以使用 `enumerate()` 函数来找出列表中所有相同元素的索引。`enumerate()` 函数返回的是一个包含元素索引和元素值的元组,可以在循环中使用。示例如下:
```python
my_list = ['a', 'b', 'c', 'a', 'd', 'e', 'a']
indices = {}
for index, item in enumerate(my_list):
if item in indices:
indices[item].append(index)
else:
indices[item] = [index]
print(indices)
```
输出结果是:
```
{'a': [0, 3, 6], 'b': [1], 'c': [2], 'd': [4], 'e': [5]}
```
可以看到字典中的键就是列表中的元素,对应的值是索引列表,代表该元素在列表中出现的位置。
list返回某个元素的索引 python
在Python中,你可以通过循环和条件语句来查找列表中特定元素的索引。有两种常见方法:
1. 使用`enumerate()`函数[^1]:
```python
def get_same_element_index(ob_list, word):
return [index for index, value in enumerate(ob_list) if value == word][0] # 返回第一个匹配项的索引
```
`enumerate()`函数会返回一个枚举对象,其中包含了列表中每个元素的索引和对应的值。如果列表中有多个相同的元素,这个函数只会返回第一个匹配项的索引。
2. 如果你想返回所有相同元素的索引,可以稍作修改上述代码:
```python
def get_all_same_element_indices(ob_list, word):
return [index for index, value in enumerate(ob_list) if value == word] # 返回所有匹配项的索引列表
```
阅读全文