为什么 x -= x + 4 return -4 而不是 4

why does x -= x + 4 return -4 instead of 4

python 的新手,并尝试研究赋值运算符的细节。这是我的代码,然后是问题。

  x = 5
  print(x)
  x -= x + 4
  print(x)

上面的代码,returns第一次是 5,但是第二次打印时是 -4。在我的脑海里,我觉得这个数字实际上应该是 4,因为我正在阅读这个 x= x - x +4。但是,我知道这是错误的,因为 python 返回的是 -4。如果有人能向我解释(简单地说,因为我是新手),我将不胜感激,因为我一直在为这个 table 苦思冥想。

x -= x + 4可以写成:

x = x - (x + 4) = x - x - 4 = -4