为什么取幂**与pow()不同? - Python

时间:2013-02-06 00:05:18

标签: python python-2.7

在python中2**3等同于pow(2,3)
但不知何故-1**0不等于pow(-1,0)
第一个是 -1 的意外输出?

有人可以解释原因吗?

1 个答案:

答案 0 :(得分:13)

**优先于-,因此您的代码的评估方式如下:

  -(1**0)
= -(1)
= -1

要获得相同的答案,请添加括号:

(-1)**0

该文档更详细地解释了**运算符:http://docs.python.org/2/reference/expressions.html#the-power-operator