当前位置:  开发笔记 > 编程语言 > 正文

在Python中跳过迭代

如何解决《在Python中跳过迭代》经验,为你挑选了6个好方法。

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



1> André..:

你正在寻找继续.


真正的问题:在'lookin'Pythonic中离开'g'了吗?
这一定是我见过的最简洁的答案之一!

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



3> S.Lott..:

像这样的东西?

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



4> MedImage..:

继续示例:

number = 0

for number in range(10):
   number = number + 1

   if number == 5:
      continue    # continue here

   print('Number is ' + str(number))

print('Out of loop')

输出:

Number is 1
Number is 2
Number is 3
Number is 4
Number is 6 # Note: 5 is skipped!!
Number is 7
Number is 8
Number is 9
Number is 10
Out of loop



5> Jason Punyon..:

我想你正在寻找继续



6> 小智..:

对于此特定用例,使用try..except..else是最干净的解决方案,else如果未引发异常,则将执行该子句。

注意:该else子句必须跟在所有except子句之后

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

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有