首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >重复获取元素在列表中位置的更好方法?

重复获取元素在列表中位置的更好方法?
EN

Stack Overflow用户
提问于 2012-11-09 13:06:55
回答 5查看 107关注 0票数 2

我有一个整数列表(从0到N),我需要创建一个新列表,其中包含第一个列表中每个整数的索引。

也就是说,给定

代码语言:javascript
运行
复制
s = [4, 2, 6, 3, 0, 5, 1]

确定r,使s[r[i]] = i

代码语言:javascript
运行
复制
r = [4, 6, 1, 3, 0, 5, 2]

我目前的解决方案是

代码语言:javascript
运行
复制
r = [s.index(i) for i in xrange(len(s))]

有没有更好的方法?

EN

Stack Overflow用户

发布于 2012-11-09 13:42:11

你可以使用numpy吗?

代码语言:javascript
运行
复制
>>> import numpy as np
>>> s = np.array([4, 2, 6, 3, 0, 5, 1])
>>> s.argsort()
array([4, 6, 1, 3, 0, 5, 2], dtype=int64)
票数 2
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13302390

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档