相关疑难解决方法(0)

是否有标准化的方法在Python中交换两个变量?

在Python中,我看到使用这种语法交换了两个变量值:

left, right = right, left
Run Code Online (Sandbox Code Playgroud)

这被认为是交换两个变量值的标准方法,还是有一些其他方法可以按惯例最常交换两个变量?

python syntax swap conventions

310
推荐指数
5
解决办法
19万
查看次数

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
查看次数

标签 统计

python ×2

conventions ×1

numpy ×1

swap ×1

syntax ×1