【问题标题】:Python Leave Loop EarlyPython 提前离开循环
【发布时间】:2011-01-12 03:51:12
【问题描述】:

如何在 python 中提前退出循环?

for a in b:
    if criteria in list1:
        print "oh no"
        #Force loop i.e. force next iteration without going on
    someList.append(a)

另外,在 java 中你可以 break 跳出循环,在 Python 中有没有等价物?

【问题讨论】:

  • 不要使用list 作为变量名。它隐藏了内置。

标签: python loops


【解决方案1】:

continuebreak 是你想要的。在这方面,Python 的工作方式与 Java/C++ 相同。

【讨论】:

  • 随机好奇心;您是来自 Bethesda 论坛的“Max_aka_NOBODY”吗?你们共享同一个头像,这就是我想知道的原因。
【解决方案2】:

首先,请记住,使用列表理解可能会做你想做的事。所以你也许可以使用类似的东西:

somelist = [a for a in b if not a.criteria in otherlist]

如果您想在 Python 中尽早退出循环,您可以使用 break,就像在 Java 中一样。

>>> for x in xrange(1,6):
...     print x
...     if x == 2:
...         break
...
1
2

如果您想尽早开始循环的下一次迭代,请使用continue,就像在 Java 中一样。

>>> for x in xrange(1,6):
...     if x == 2:
...         continue
...     print x
...
1
3
4
5

Here's the documentation for break and continue. 这也涵盖了循环的else 子句,当您break 时不会运行这些子句。

【讨论】:

    【解决方案3】:

    continuebreak 与其他编程语言中的工作方式完全相同,只是您不能将break 用于标签(例如,您可以在Java 中)。这意味着您一次只能打破 一个 循环。

    【讨论】:

      【解决方案4】:

      看看breakcontinue

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-07-21
        • 2010-12-23
        • 1970-01-01
        • 2016-07-07
        • 2012-10-31
        • 2014-05-20
        • 2016-02-08
        • 1970-01-01
        相关资源
        最近更新 更多