为什么-1 ** 2 == -1?

时间:2014-07-31 17:19:22

标签: python

$ python
Python 2.7.5 (default, Jun 25 2014, 10:19:55) 
[GCC 4.8.2 20131212 (Red Hat 4.8.2-7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> -1 ** 2 == -1
True

为什么会这样?我以为它是1。

2 个答案:

答案 0 :(得分:3)

Python认为它是-(1 ** 2) == -1。请注意:

>>> (-1)**2 == -1
False

答案 1 :(得分:0)

操作顺序。在加或减之前执行功率。因此,仅在平方1后才会记下减号。