Python **运算符的关联性是什么?

前端之家收集整理的这篇文章主要介绍了Python **运算符的关联性是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在玩 python命令行和**运算符,据我所知,它执行幂函数.所以2 ** 3应该是(并且是)8因为2 * 2 * 2 = 8.

有人能解释我发现的行为吗?我没有看到任何方法将操作与括号分组以实际获得65536的结果,就像在这里获得的那样.

>>> 2 ** 2 ** 2
16
>>> 2 ** 2 ** 2 ** 2
65536
>>> (2 ** 2 ** 2) ** 2
256

解决方法

2** (2**(2**2))

http://docs.python.org/reference/expressions.html

同一个框组中的操作符从左到右(除了比较,包括测试,它们都具有相同的优先级和从左到右的链 – 参见比较 – 和取幂,从右到左分组).

猜你在找的Python相关文章