为了账号安全,请及时绑定邮箱和手机立即绑定

为什么用2^n计算不对,表示的意思不一样吗?

sum = 0
x = 1
n = 1
while True:
    sum = x + sum
    x = 2^n
    n = n + 1
    if n > 20:
        break
print sum
为什么计算的结果是189?


正在回答

3 回答

^不是幂运算,是按位异或(二进制),2**n是幂运算

0 回复 有任何疑惑可以回复我~
#1

loody 提问者

非常感谢!
2018-07-16 回复 有任何疑惑可以回复我~

x每次都要进行一个幂运算是很耗费性能的。

0 回复 有任何疑惑可以回复我~

我也是这样写 https://img1.sycdn.imooc.com//5b3d95e30001627711780453.jpg

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758625    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

为什么用2^n计算不对,表示的意思不一样吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信