看代码
for i in range(10):if i%2 !=0:
print(i)
continue
i += 2
print(i) 为啥我打出来出来的是 1,3,5,7,9,11 ? 你最后 i += 2 想干嘛。? 所以?你想干啥来着 if奇数打印,所以1 3 5 7 9
因为最后i+=2又打印,所以有个11 本帖最后由 heidern0612 于 2018-11-20 08:12 编辑
for i in range(10):
if i%2 !=0:
print(i)
continue
i += 2
print(i)
1、3、5、7、9能弄明白吧?因为2、4、6、8被if过滤掉了,没打印出来.
continue一直到for循环结束,i = 9.紧跟着 I = I+2,,自己又加了2,打印出来。
把最后两行去了就行了。 heidern0612 发表于 2018-11-20 08:11
1、3、5、7、9能弄明白吧?因为2、4、6、8被if过滤掉了,没打印出来.
continue一直到for循环结束 ...
意思是if 后面条件满足了 才能continue 下去吗 塔利班 发表于 2018-11-19 23:14
if奇数打印,所以1 3 5 7 9
因为最后i+=2又打印,所以有个11
为什么会被过滤了range(10 ) 应该有10个数的嘛 现在 只有6个数 a2421480 发表于 2018-11-20 18:45
意思是if 后面条件满足了 才能continue 下去吗
continue本来是用来过滤的条件,跳出当前次数循环,继续后面循环的。但是你这个continue没什么用,起码去掉了并不影响你当前代码的运行。 a2421480 发表于 2018-11-20 18:46
为什么会被过滤了range(10 ) 应该有10个数的嘛 现在 只有6个数
if i%2 !=0:
if语句不了解吗,只有满足条件才执行语句块的内容
不懂得话好好看看书,百度下 a2421480 发表于 2018-11-20 18:46
为什么会被过滤了range(10 ) 应该有10个数的嘛 现在 只有6个数
不是你自己定义的吗?如果i%2 !=0 就打印? 只有偶数除2才等于0,奇数除2不为零才打印的 heidern0612 发表于 2018-11-20 19:35
不是你自己定义的吗?如果i%2 !=0 就打印? 只有偶数除2才等于0,奇数除2不为零才打印的
意思是不是之前打印出来的 3 5 7 9都是 加上过2 的都是重复式的嘛 塔利班 发表于 2018-11-20 18:53
if i%2 !=0:
if语句不了解吗,只有满足条件才执行语句块的内容
不懂得话好好看看书,百度下
continue在这个代码中是满足市民条件才开始执行的呢 heidern0612 发表于 2018-11-20 08:11
1、3、5、7、9能弄明白吧?因为2、4、6、8被if过滤掉了,没打印出来.
continue一直到for循环结束 ...
意思就是for循环结束了 continue 才开始是吧 露转溪桥 发表于 2018-11-19 21:33
你最后 i += 2 想干嘛。?
证明 continue的存在 a2421480 发表于 2018-11-20 20:36
continue在这个代码中是满足市民条件才开始执行的呢
是啊,但是你这是循环最后的语句,结束当次循环,有无作用不大了 灰色的天空 发表于 2018-11-19 21:48
所以?你想干啥来着
我想知道怎么打印出来的 大哥 塔利班 发表于 2018-11-20 20:38
是啊,但是你这是循环最后的语句,结束当次循环,有无作用不大了
谢谢大佬{:5_91:} a2421480 发表于 2018-11-20 20:29
意思是不是之前打印出来的 3 5 7 9都是 加上过2 的都是重复式的嘛
跟加不加2有什么关系?。。
%应该明白吧? 是求余数操作符。
2%2、4%2、6%2、8%2的结果都是零。
同理,1、3、5、7、9的求余操作结果都是1。
你设置的if语句,要的就是0到9范围内求余不为零的数,然后print打印出来。,就这么简单。
如果还是不明白的话,就多看看小甲鱼老师的视频吧。 heidern0612 发表于 2018-11-20 20:42
跟加不加2有什么关系?。。
%应该明白吧? 是求余数操作符。
我是没明白continue 是要等for 循环结束才进行的 heidern0612 发表于 2018-11-20 20:42
跟加不加2有什么关系?。。
%应该明白吧? 是求余数操作符。
你前面讲的 后二行可以去掉是啥意思哦
页:
[1]