【发布时间】:2017-08-26 08:26:22
【问题描述】:
是否有任何有效的方法可以就地逆转 NumPy?
注意:我不是在寻找相反的视图。我希望数组真正反转。
【问题讨论】:
-
我的猜测是,将反向视图复制回自身是您能做的最好的事情:
arr[:]=arr[::-1]。换句话说,数据缓冲区必须被重写。即使这样,您也可能会遇到缓冲问题。arr[:]=arr[::-1].copy()可能更安全。 -
@hpaulj:这也是我的猜测......
-
为什么反向视图对您不利?
-
@Julien:
a = numpy.asarray([1, 2, 3]);print(numpy.add(a[::-1], 1, a)) -
@Mehrdad: As of NumPy 1.13,
numpy.add(a[::-1], 1, a)中的别名应该不再是问题。 (我相信这是通过创建副本来实现的。)
标签: python arrays numpy reverse