😊 Python中如何对数组排序并保留索引?
2025-03-28 08:39:23
•
来源:
导读 在数据分析或算法开发时,我们常常需要对数组进行排序,并同时保留元素的原始索引位置。这可以通过Python轻松实现!例如,使用`enumerate()...
在数据分析或算法开发时,我们常常需要对数组进行排序,并同时保留元素的原始索引位置。这可以通过Python轻松实现!例如,使用`enumerate()`结合`sorted()`函数,可以高效地完成这一任务。
🤔 具体操作步骤:
假设你有一个数组 `arr = [5, 2, 9, 1]`,想按值升序排列并保留每个元素的索引。代码如下:
```python
arr = [5, 2, 9, 1]
使用 enumerate 和 sorted 结合 lambda 表达式
sorted_indices = sorted(range(len(arr)), key=lambda x: arr[x])
print(sorted_indices) 输出:[3, 1, 0, 2]
```
通过这种方法,`sorted_indices`会记录每个元素排序后的索引位置,而不会改变原数组内容。
🌟 小提示: 如果你需要保留列索引(比如二维数组),只需稍作调整即可。例如,针对矩阵的列排序,可以先提取列数据再执行类似操作。
💡 总结: Python的强大库和简洁语法让这种需求变得简单优雅。无论是学习还是工作,掌握这种技巧都能大幅提升效率哦!✨
免责声明:本文由用户上传,如有侵权请联系删除!