NumPy的排序函数返回None。

8
我有一个简单的程序如下:

我有下面这个简单的程序:

import numpy as np

arr = np.random.randn(8)
new = arr.sort()
new1 = np.sort(arr)
print new
print new1

我本以为这两个新数组都是排序后的相同数组,但实际上newNone,而new1才是我所期望的。请问这两种排序方法有什么区别?


6
sort()方法是就地排序,即直接修改原数组。 - Warren Weckesser
1个回答

17

根据 numpy.ndarray.sort 的文档:

对数组进行原地排序。

如果你想获得原始数组的排序副本,而不是在原地排序,你应该使用 numpy.sort,它将返回一个副本,就像你所看到的那样。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接