两个Python关键字continue和pass之间有什么显著的区别吗
for element in some_list:
if not element:
pass
and
for element in some_list:
if not element:
continue
我应该注意的?
两个Python关键字continue和pass之间有什么显著的区别吗
for element in some_list:
if not element:
pass
and
for element in some_list:
if not element:
continue
我应该注意的?
当前回答
Pass可以用于这样的场景:当你需要一些空函数、类或循环用于未来的实现,并且不需要执行任何代码时。 Continue用于以下情况:当在循环中满足某些条件时,需要跳过当前迭代并移动到下一个迭代。
其他回答
x = [1,2,3,4]
for i in x:
if i==2:
pass #Pass actually does nothing. It continues to execute statements below it.
print "This statement is from pass."
for i in x:
if i==2:
continue #Continue gets back to top of the loop.And statements below continue are executed.
print "This statement is from continue."
输出为
>>> This statement is from pass.
同样,让我们运行相同的代码,只做了一些小更改。
x = [1,2,3,4]
for i in x:
if i==2:
pass #Pass actually does nothing. It continues to execute statements below it.
print "This statement is from pass."
for i in x:
if i==2:
continue #Continue gets back to top of the loop.And statements below continue are executed.
print "This statement is from continue."
输出为-
>>> This statement is from pass.
This statement is from pass.
This statement is from pass.
This statement is from pass.
This statement is from continue.
This statement is from continue.
This statement is from continue.
Pass什么都不做。计算不受影响。但是继续返回到循环的顶部继续进行下一个计算。
是的,这是有区别的。Continue实际上跳过了当前循环迭代的其余部分(返回到开始)。Pass是一个空语句,不执行任何操作。
查看python文档
Continue将跳转回循环的顶部。Pass将继续处理。
如果pass位于循环的末尾,则差异可以忽略不计,因为流无论如何都会返回到循环的顶部。
Pass可以用于这样的场景:当你需要一些空函数、类或循环用于未来的实现,并且不需要执行任何代码时。 Continue用于以下情况:当在循环中满足某些条件时,需要跳过当前迭代并移动到下一个迭代。
它们之间有区别,continue跳过循环的当前迭代并执行下一个迭代。Pass什么都不做。它是一个空语句占位符。 我想给你们举个例子,能更好地说明这一点。
>>> some_list = [0, 1, 2]
... for element in some_list:
... if element == 1:
... print "Pass executed"
... pass
... print element
...
0
Pass executed
1
2
... for element in some_list:
... if element == 1:
... print "Continue executed"
... continue
... print element
...
0
Continue executed
2