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

for与continue循环中对输出结果的疑问

for i in range(10):

    if i%2 != 0:

        print(i)

        continue

    i +=2

    print(i)

#思考上下代码的逻辑不同


for i in range(10):

    if i%2 != 0:

        print(i)

        continue

    i +=2

print(i)#这个print没有作用

本来是想打第一段代码的结果最后的print缩进错误,用IDLE的道德结果是
1
3
5
7
9
9
按照这个错误代码的逻辑应该只有一个9的为什么会出现两个呢?求教?


正在回答

3 回答

https://img1.sycdn.imooc.com//5d52b2830001ae9b14760544.jpg

这边是我运行的结果!

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

for i in range(10):

    if i%2 != 0:

        print(i)

        continue

    i +=2

print(i)

最后一个print(i)打印出了多出来的9,它并不是没任何作用,将这个print删掉就能去除多出来的9

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

闰一先生 提问者

9不是已经进入了if循环吗
2017-07-14 回复 有任何疑惑可以回复我~

你的形容我怎么看不太懂  

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

闰一先生 提问者

表达有点问题(尴尬.png)
2017-07-14 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

for与continue循环中对输出结果的疑问

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