跳过Python中的迭代

我有一个循环,但有可能在循环内引发exception。 这当然会一起阻止我的程序。 为了防止我发现exception并处理它们。 但是,即使发生exception,其余的迭代也会运行。 在我的except:子句中是否有一个关键字用来跳过当前迭代的其余部分?

你正在寻找继续 。

 for i in iterator: try: # Do something. pass except: # Continue to next iteration. continue 

像这样的东西?

 for i in xrange( someBigNumber ): try: doSomethingThatMightFail() except SomeException, e: continue doSomethingWhenNothingFailed() 

我想你正在寻找继续

对于这个特定的用例,使用try..except..else是最干净的解决scheme,如果没有引发exception, else子句将被执行。

注意: else子句必须遵循所有except子句

 for i in iterator: try: # Do something. except: # Handle exception else: # Continue doing something