小编vin*_*cen的帖子

a[0],a[1] = a[1],a[0]的过程中发生了什么?

今天下午我发现了一个无法理解的现象。我想交换ndarray中的两行,如下代码所示。

import numpy as np

a = np.random.randint(0, 40, size=(4, 4))
a = a + a.T
b = a.copy()
print(a)
b[1], b[3] = b[3], b[1]
print(b)
Run Code Online (Sandbox Code Playgroud)

但是一个意想不到的结果来了。打印结果如下

[[60 64 12 33]
 [64 30 29 60]
 [12 29 40 64]
 [33 60 64 76]]

[[60 64 12 33]
 [33 60 64 76]
 [12 29 40 64]
 [33 60 64 76]]
Run Code Online (Sandbox Code Playgroud)

我知道 a,b = b,a 是有效的。我想知道它们之间有什么区别?你能从记忆的角度谈谈这个问题吗?提前谢谢你!

python numpy

3
推荐指数
1
解决办法
67
查看次数

标签 统计

numpy ×1

python ×1