发布时间:2019-09-19 08:05:23编辑:auto阅读(2167)
一、try...finally
高级语言通常都内置了一套try...except...finally...的错误处理机制,Python也不例外.
当我们认为某些代码可能会出错时,就可以用try来运行这段代码,如果执行出错,则后续代码不会继续执行,而是直接跳转至错误处理代码,即except语句块,执行完except后,如果有finally语句块,则执行finally语句块,至此,执行完毕。
如下所示:
try: print 'try...' r = 10 / 0 print 'result:', rexcept ZeroDivisionError, e: print 'except:', e finally: print 'finally...' print 'END'
二、with....as
这个语法是用来代替传统的try...finally语法的。
with EXPRESSION [ as VARIABLE] WITH-BLOCK
基本思想是with所求值的对象必须有一个__enter__()方法,一个__exit__()方法。
紧跟with后面的语句被求值后,返回对象的__enter__()方法被调用,这个方法的返回值将被赋值给as后面的变量。当with后面的代码块全部被执行完之后,将调用前面返回对象的__exit__()方法。
file = open("/tmp/foo.txt")
try:
data = file.read()
finally:
file.close()而使用with as写法如下:
with open("/tmp/foo.txt") as file:
data = file.read()
上一篇: J0ker的CISSP之路:How CI
下一篇: Nginx + uWSGI + Pyt
51397
50871
41460
38243
32747
29653
28455
23372
23304
21633
1727°
2460°
2054°
1987°
2343°
2017°
2730°
4570°
4375°
3119°