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

sum放置问题

为什么sum=sum+x 放到n=n+1 后面的结果和放到x=x*2 前面的结果不一样。

正在回答

3 回答

因为放到前面的时候是先进行一次sum+x,然后再把x的值乘以2。放到后面是先把x的值乘以2,再执行sum+x。具体一点就是,放到后面时,sum的值没加把x=1加进去,直接从x=2时计算的。


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

FeeArtYu 提问者

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

sum = 0
x = 1
n = 1
while True:
    if n>20:
      break
    sum=sum+x
    x=x*2
    n=n+1
print sum

sum = 0
x = 1
n = 1
while True:
    if n>20:
      break
    x=x*2
    n=n+1

   sum=sum+x

print sum

这两个代码执行结果不一样


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

iamrookie

应该和段位输出有关系吧
2018-05-04 回复 有任何疑惑可以回复我~
#2

FeeArtYu 提问者 回复 iamrookie

不明白
2018-05-04 回复 有任何疑惑可以回复我~

问题能完整描述一下么?

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

FeeArtYu 提问者

sum = 0 x = 1 n = 1 while True: if n>20: break sum=sum+x x=x*2 n=n+1 print sum sum = 0 x = 1 n = 1 while True: if n>20: break x=x*2 n=n+1 sum=sum+x print sum 这两个代码执行结果不一样
2018-05-03 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

sum放置问题

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