with 是个好东西,打开文件的时候多使用它,可以避免很多问题。例如:
temp = os.open('test_text.txt', os.O_RDWR | os.O_CREAT)
temp_file = os.fdopen(temp,'r')
print(str(temp_file.read()))
os.close(temp)
就可以简化成:
with open('test_text.txt','r')as f:
print(f.read())
使用一个快捕捉多个异常:
def model_exception(x,y):
try:
b = name
a =x/y
except(ZeroDivisionError,NameError,TypeError):
print('one of ZeroDivisionError or NameError or TypeError happend')
#调用函数结果
model_exception(2,0)
输出如下:
one of ZeroDivisionErrororNameErrororTypeError happend
捕获所有异常:
try:
...
exceptExceptionas e:
...
log('Reason:', e) # Important!
这个将会捕获除了 SystemExit 、 KeyboardInterrupt 和 GeneratorExit 之外的所有异常。 如果你还想捕获这三个异常,将 Exception 改成 BaseException 即可。