为什么 += 被认为是赋值运算符而 >= 不是?

Why += is considered as an assignment operator while >= is not?

我在想为什么 '+=' 中的 '=' 被视为赋值,而 '>=' 中的 '=' 不被视为赋值。这个问题背后没有任何重要性,而是初学者的一些随机想法。例如,您可以考虑

a = np.array([1,2,3,4,5])
a += 2 # array updated and assigned to a

a>=2 # becomes a boolean indexing filter

a += 2 更改 a 的值。它 重新分配 它的价值比以前多了两个。顺便说一句,+=作为一个整体是赋值运算符,而不仅仅是=.

a>=2 不会改变 a 的值。是的,它变成真或假。但是 'true' 或 'false' 就是全部了。它不会分配给任何东西。 a的值和之前一样。

你可以b = a>=2。但在那种情况下,= 是赋值运算符,因为它将值赋给 b.