python - 如何返回列表中每个元素的顺序索引?
问题描述
我有一个数字列表,比如说L=[50, 10, 30]
,在 Python 中我想返回一个列表,给出每个元素的顺序索引L
,这将是这个输出:[2, 0, 1]
。
尽管这似乎是一项简单的任务,但该站点上的许多问题(例如此处 和此处)都集中在相反的方向上,即从排序列表的角度来看的索引:[1, 2, 0]
,这不是我想要的。
谢谢,
编辑:关于重复,我希望它们也被计算在内(按出现顺序绘制)。[50,30,10,30]
会给[3,1,0,2]
解决方案
一个班轮:
l = [50, 30, 10, 30]
numpy.argsort(numpy.argsort(l))
# array([3, 1, 0, 2])
推荐阅读
- solr - Solr 中是否有展开/折叠包罗万象的组?
- excel - 尝试遍历工作表并格式化其中的特定表格
- linker - 使用 Turbo C 编译并链接到 .com 文件
- selenium - 与单击按钮一起使用的正确语法
- python - Numpy dstack Pandas 数据框列
- python - Python-dask/pandas 如何删除/排除每组中的最后一个观察值
- firebase - 我可以仅使用 thumbnailPhotoUrl 显示 G Suite 用户照片吗?
- r - Shiny 在单行中使用超过 12 列
- c# - 使用反射在字典上调用 Enumerable.Except (IEnumerable)
- c# - 添加到集合后如何配置服务选项?