小编ias*_*nas的帖子

Python中a - = b和a = a - b之间的区别

我最近应用这个解决方案来平均每N行矩阵.虽然解决方案通常起作用,但在应用于7x1阵列时遇到了问题.我注意到问题是在使用-=运算符时.举一个小例子:

import numpy as np

a = np.array([1,2,3])
b = np.copy(a)

a[1:] -= a[:-1]
b[1:] = b[1:] - b[:-1]

print a
print b
Run Code Online (Sandbox Code Playgroud)

哪个输出:

[1 1 2]
[1 1 1]
Run Code Online (Sandbox Code Playgroud)

因此,在数组的情况下a -= b产生不同的结果a = a - b.直到现在我才想到这两种方式完全相同.有什么不同?

为什么我提到的用于求和矩阵中每N行的方法是如何工作的,例如7x4矩阵而不是7x1阵列?

python arrays numpy in-place variable-assignment

88
推荐指数
3
解决办法
6841
查看次数

标签 统计

arrays ×1

in-place ×1

numpy ×1

python ×1

variable-assignment ×1