两个Python关键字continue和pass之间有什么显著的区别吗

for element in some_list:
    if not element:
        pass

and

for element in some_list:
    if not element:
        continue

我应该注意的?


当前回答

可以这样考虑:

通过:Python只处理缩进!不像其他语言,这里没有空花括号。

因此,如果你想在条件为真时什么都不做,除了pass没有其他选择。

Continue:这只在循环的情况下有用。在这种情况下,对于一定范围的值,您不想在特定传递的条件为真之后执行循环的剩余语句,那么您将必须使用continue。

其他回答

在这些例子中,没有。如果语句不是循环中的最后一个,那么它们的效果就非常不同。

Pass只是表示空什么都不做,如下所示:

for i in range(3):
    if i == 1:
        pass
    print(i)

输出:

0
1
2

Continue跳过当前循环进入下一个循环,如下所示:

for i in range(3):
    if i == 1:
        continue
    print(i)

输出:

0
2

是的,这是有区别的。Continue实际上跳过了当前循环迭代的其余部分(返回到开始)。Pass是一个空语句,不执行任何操作。

查看python文档

它们之间有区别,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

for循环中pass和continue的区别:

那么为什么要传入python呢?

如果你想创建一个空类,方法或块。

例子:

class MyException(Exception):
    pass


try:
   1/0
 except:
   pass

在上面的例子中没有'pass'将抛出IndentationError。