Python和Powers Math

时间:2012-08-20 19:31:45

标签: python math multiplication exponent

我一直在学习Python,但我有点困惑。当我试图提高到一定数量时,在线教师告诉我使用操作符**而不是^。例如:

print 8^3

给出11的输出。但我所寻找的(我被告知)更类似于:打印8 ** 3给出512的正确答案。但为什么?

有人可以向我解释一下吗?为什么8 ^ 3不等于512,因为它是正确的答案?在什么情况下11(8 ^ 3的结果)?

我确实试图搜索SO但我只看到有关在分割时获得模数的信息。

3 个答案:

答案 0 :(得分:63)

运算符^按位运算符“按位异或”。 更多:http://wiki.python.org/moin/BitwiseOperators

电源操作符为**,类似于 8**3 ,等于512
参考:http://docs.python.org/reference/expressions.html#the-power-operator

答案 1 :(得分:14)

符号代表不同的运算符。

The ^ represents the bitwise exclusive or (XOR)

  

输出的每个位与x中的相应位相同        y中的该位为0,如果y中的位为1,则它是x中位的补码。

**代表电力运营商。这就是语言结构的方式。

答案 2 :(得分:0)

只是^并不意味着Python中的“exponent”。这意味着“按位异或”。请参阅the documentation