我有一个数字列表:
myList = [1, 2, 3, 100, 5]
Run Code Online (Sandbox Code Playgroud)
现在,如果我对此列表进行排序以获取[1, 2, 3, 5, 100].我想要的是排序顺序中原始列表中元素的索引,即[0, 1, 2, 4, 3]
--- ala MATLAB的sort函数,它返回值和索引.
我有以下代码:
[x ** 2 for x in range(10)]
Run Code Online (Sandbox Code Playgroud)
当我在Python Shell中运行它时,它返回:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Run Code Online (Sandbox Code Playgroud)
我搜索过,似乎这被称为列表理解,但它是如何工作的?
我正在寻找Python中的一些代码,它可以k从未排序的n数字列表中返回最大的数字.首先我想通过先排序列表来做到这一点,但这可能会变得非常笨重.
例如,我想要找到k最大数字的列表list1
> list1 = [0.5, 0.7, 0.3, 0.3, 0.3, 0.4, 0.5]
Run Code Online (Sandbox Code Playgroud)
在这里n = 7,如果k = 3,如果我想从7个数字的列表中找到3个最大的数字,那么输出应该是0.5, 0.7, 0.5
如何才能做到这一点?