为什么这两个语句不等价?
>> math.pow(-2,2)
4.0
>> -2 ** 2
-4
Python 3.5.3(默认,2017 年 1 月 19 日,14:11:04)
最佳答案
运算符的执行顺序(运算符优先级)在这里很重要:对于 -2**2
,首先执行 2 的 2 次幂,然后执行负号。
使用括号得到想要的结果
(-2)**2 = 4
关于python - 为什么 -2**2 == -4 但 math.pow(-2, 2) == 4.0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45910687/