pass 和continue 的区别
根据以下代码,可不可以理解为:continue是把i=3这个条件控制在了continue里面,不在else里面输出,而pass只起到了占位的作用,所以i=3保留到了以后的循环中?a= 'python',
i=2
for letter in a:
if letter == 'y':
pass
i=3
else:
print (letter+str(i))
结果是:
p2
t3
h3
o3
n3
a= 'python'
i=2
for letter in a:
if letter == 'y':
continue
i=3
else:
print (letter+str(i))
结果是:
p2
t2
h2
o2
n2
另外还有没有什么例子能一针见血地指出pass和continue的区别? 本帖最后由 yexing 于 2020-4-9 07:51 编辑
pass 的意思就是什么都不执行,因此说它是个占位符没错。
但是你对 continue 的理解错了,continue 意思是跳出当前循环并开始下一轮循环。
比如下面代码,如果 i 是偶数,那么我们不打印,看看输出结果:
for i in range(1, 11): #从1开始10结束
if i%2 == 0:
continue
print(str(i) + "是奇数!")
输出:
1是奇数!
3是奇数!
5是奇数!
7是奇数!
9是奇数!
解释一下程序逻辑,如果 i 是偶数,进入 if i%2 == 0 的内容,它被 continue 了,所以此时暂时退出循环,不执行 print() 的内容。
接下来继续下一轮循环,i 变成下一个数,如此反复,直至到达 range() 的最后一个数。
顺便说一下,以后发代码建议用代码格式发:
点击上面的 <> 按钮,复制代码进去。
像这样 continue: 执行到该语句时,就会返回到循环的头部,继续往下执行循环。
所以 i=3 永远不会被执行。
pass:只是占位符,当循环体或if 条件执行体没想好执行什么时,只想写个框架时,就写个 pass(否则什么都不写,会出错。)
pass后面如果有其他语句,pass 就没什么作用了。 yexing 发表于 2020-4-9 07:49
pass 的意思就是什么都不执行,因此说它是个占位符没错。
但是你对 continue 的理解错了,continue 意思 ...
知道了,我刚来鱼C还不懂规矩
页:
[1]