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

break条件和while True用的时候,break放的位置不一样,有影响吗?

sum = 0

x = 1

n = 1

while True:

    if n>20:

        break

    sum=sum+x

    x=x*2

    n=n+1

print sum

这个运行是正确的,但是把if....break语句放在后面就出错了,

sum = 0

x = 1

n = 1

while True:

    sum=sum+x

    x=x*2

    n=n+1

if n>20:

        break

print sum

这两种有什么区别吗?求解。

正在回答

2 回答

(1)python是按缩进划分代码块,所以你应该把第二次中的if n > 20和break缩进

(2)两者还是有区别的,如果n初始值为21,那么第一次sum = sum + x之后的代码一次也不会执行,但是第二次sum = sum + x的代码会执行一次


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

把if语句缩进后,两个代码的执行结果是一样的,都是只会计算到前20个数的和。

sum = 0

x = 1

n = 1

while True:

    sum=sum+x

    x=x*2

    n=n+1

    if n>20:

        break


print sum


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

举报

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

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

进入课程

break条件和while True用的时候,break放的位置不一样,有影响吗?

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