为什么这两个陈述不等同?
>> math.pow(-2,2)
4.0
>> -2 ** 2
-4
Python 3.5.3(默认,2017年1月19日,14:11:04)
答案 0 :(得分:6)
运算符的执行顺序(运算符优先级)在这里很重要:使用-2**2
,首先执行2到幂2的取幂,然后是负号。
使用括号来获得所需的结果
( - 2)** 2 = 4
答案 1 :(得分:1)
因为' - '的优先级落后于'**'的优先级,所以先使用(-2)** 2计算-2
答案 2 :(得分:0)