为什么 x -= x + 4 返回的是 -4 而不是 4?

5

我是一个 Python 新手,正在尝试掌握赋值运算符的细节。下面是我的代码和问题:

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

以上代码第一次返回5,但第二次打印结果为-4。在我的脑海中,我认为这个数字应该是4,因为我将其解读为 x= x - x + 4。然而,我知道这是错误的,因为Python返回的是-4。如果有人能够用简单易懂的语言(因为我是新手)解释给我听,我会非常感激的,我已经对此苦恼了好久。


3
x-=x+4 的意思是 5-(5+4) - Tamil Selvan C
1个回答

14

x -= x + 4 可以写成:

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

谢谢!我发帖后不久就意识到了这一点,但是希望有同样困惑的人能看到这个帖子,不要犯和我一样的错误 :P - prance
当然,最好写成 x = -4 - Lee Daniel Crocker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接