加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

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

发布时间:2020-12-16 23:01:32 所属栏目:Python 来源:网络整理
导读:我正在玩 python命令行和**运算符,据我所知,它执行幂函数.所以2 ** 3应该是(并且是)8因为2 * 2 * 2 = 8. 有人能解释我发现的行为吗?我没有看到任何方法将操作与括号分组以实际获得65536的结果,就像在这里获得的那样. 2 ** 2 ** 216 2 ** 2 ** 2 ** 265536 (
我正在玩 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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读