^=、-=和+;=Python中的符号
我对Python很有经验,但最近,当我在查看示例测试的解决方案时,遇到了操作符^=、-=和+;=Python中的符号,python,operators,symbols,Python,Operators,Symbols,我对Python很有经验,但最近,当我在查看示例测试的解决方案时,遇到了操作符-=,+=,^=,我无法理解它们的作用。也许有人能解释一下它们的使用环境吗?就像几乎所有现代语言一样,python也有 因此,在执行一些算术或逻辑运算后,每当您要为变量赋值时,它们都可以使用它们,这两个(赋值和运算)都以简洁的方式表示在一条语句中 当您计算X=X+Y时,实际上是将X和Y的总和返回到一个新变量中,在您的示例中,该变量覆盖了X的先前值。使用X+=1形式的赋值运算符时,值1直接与当前值X相加,而不在新变量中返
-=
,+=
,^=
,我无法理解它们的作用。也许有人能解释一下它们的使用环境吗?就像几乎所有现代语言一样,python也有
因此,在执行一些算术或逻辑运算后,每当您要为变量赋值时,它们都可以使用它们,这两个(赋值和运算)都以简洁的方式表示在一条语句中
当您计算
X=X+Y
时,实际上是将X
和Y
的总和返回到一个新变量中,在您的示例中,该变量覆盖了X
的先前值。使用X+=1
形式的赋值运算符时,值1
直接与当前值X
相加,而不在新变量中返回结果。请看下面的代码:
>>> V = np.arange(10)
>>> view = V[3:] # view is just a subspace (reference) of the V array
>>> print(V);print(view)
[0 1 2 3 4 5 6 7 8 9]
[3 4 5 6 7 8 9]
>>> view = view + 3 # add view to a constant in a new variable
>>> print(V);print(view)
[0 1 2 3 4 5 6 7 8 9]
[ 6 7 8 9 10 11 12]
>>> view = V[3:]
>>> view += 3 # here you actually modify the value of V
>>> print(V);print(view)
[ 0 1 2 6 7 8 9 10 11 12]
[ 6 7 8 9 10 11 12]
您还可以查看
numpy.ndarray.base的文档,检查一个数组是否实际上是另一个数组的引用。我很困惑,X+=Y
是否本质上是X=X+Y
,除非您正在使用的库使它过载?啊,是的,谢谢!这张桌子真漂亮!谢谢你把它清理干净!漂亮:)我在找一张这样的表。这张表最左边一栏中所有的“AND”是什么意思?它的意思是“分配”吗?这很让人困惑,因为大写可能指的是AND运算符。但Python的AND运算符是小写的。六羟甲基三聚氰胺六甲醚。