如何获取列表相同元素最后一个下标
时间: 2024-04-30 17:22:30 浏览: 53
python列表返回重复数据的下标
5星 · 资源好评率100%
可以使用`enumerate()`函数和`reversed()`函数来实现获取列表相同元素最后一个下标的功能。具体的做法是:
1. 遍历列表,使用`enumerate()`函数获取元素和下标;
2. 对于相同的元素,使用`reversed()`函数遍历相同元素的子列表,获取最后一个下标;
3. 将每个相同元素的最后一个下标存储到一个字典中;
4. 最后,遍历字典,获取每个相同元素的最后一个下标。
以下是具体的代码示例:
```python
def last_index(lst):
index_dict = {}
for i, item in enumerate(lst):
if item in index_dict:
for j in reversed(range(index_dict[item], i)):
if lst[j] == item:
index_dict[item] = j
break
else:
index_dict[item] = i
return index_dict
# 示例
lst = [1, 2, 3, 2, 1, 4, 5, 4, 3]
index_dict = last_index(lst)
print(index_dict) # {1: 4, 2: 3, 3: 8, 4: 7, 5: 6}
```
在上面的代码中,`last_index()`函数接受一个列表作为参数,返回一个字典,其中键是相同元素,值是最后一个下标。我们使用一个字典来存储每个相同元素的最后一个下标,对于每个相同元素,使用`reversed()`函数遍历相同元素的子列表,获取最后一个下标,并将其存储到字典中。最后遍历字典,获取每个相同元素的最后一个下标。
阅读全文