将列表排序并按返回索引顺序python
时间: 2023-12-15 13:07:12 浏览: 95
关于Python列表排序
5星 · 资源好评率100%
您可以使用`sorted`函数来对列表进行排序,并使用`sorted`函数的`key`参数来返回每个元素的索引。具体来说,您可以使用`enumerate`函数来为每个元素分配一个索引,然后使用该索引作为排序键。以下是一个示例代码:
```python
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
# 对列表进行排序,并返回索引列表
index_list = [i[0] for i in sorted(enumerate(my_list), key=lambda x:x[1])]
# 输出排序后的列表和索引列表
print('排序后的列表:', sorted(my_list))
print('按返回索引顺序的索引列表:', index_list)
```
在此示例中,`enumerate`函数为`my_list`中的每个元素分配一个索引,`sorted`函数使用该索引作为排序键,并返回排序后的元素及其索引。最后,我们使用列表推导式从排序结果中提取索引列表。
阅读全文