Python循环语句在实际的使用中和C#语言中的循环没有什么太大的区别。下面我们就来看看相关的代码。Python循环语句中的while和for循环中支持break和continue语句。#t#
break语句用于立刻中止循环,continue语句用于直接进入下一次循环(忽略当前循环的剩余语句)。break和continue语句在C#与Python循环语句中的用法是一致的,只用于语句所在的当前循环。如果需要退出一个多重循环,应该使用异常,因为Python中没有提供goto语句。
***,Python中的循环还支持else语句,它只在循环正常完成后运行(for和while循环),或者在循环条件不成立时立即运行(仅while循环),或者迭代序列为空时立即执行(仅for循环)。如果循环使用break语句退出的话,else语句将被忽略。下面的代码用于说明else在循环中的应用。
- # while-else
- while i < 10:
- ii = i + 1
- else:
- print 'Done'
- # for-else
- for a in s:
- if a == 'Foo':
- break10 else:
- print 'Not found!'
异常
Python循环语句和C#一样支持异常处理,利用try/except/finally结构,可以很方便的捕获异常,同时可以用raise语句手动抛出异常(上述四个异常处理的关键字分别对应C#中的try/catch/finally/throw)。通过except,您可以将try标示的语句中出现的错误和异常捕获,except可以接受参数作为要捕获的异常,如果想要捕获多个异常,可以使用元组(tuple)作为参数。没有参数的except被认为是捕获所有异常。而finally则用来在***执行一定要运行的代码,例如资源回收。下面是一个简单的例子,来说明Python中的异常处理方式:
- try:
- f = open('thefile.txt')
- s = f.readline()
- ...
- except IOError, (errno, strerror):
- print "I/O error(%s): %s" % (errno, strerror)
- except ValueError:
- print "Could not convert data to an integer."
- except:
- print "Unexpected error:", sys.exc_info()[0]
- raise
- finally:f.close()
***说明一点,Python循环语句的try也支持else语句。如果有一些代码要在try没有发生异常的情况下才执行,就可以把它放到else中(这一点与finally不同,finally分支无论如何都会被执行)。
关于异常处理我们就简单介绍到这里,若需了解更多关于Python循环语句异常处理类、内建异常类型、自定义异常等内容。