try except语句
try:
f = open('readme.txt')
print(f.read())
f.close()
except OSError:
print('文件出错啦')
try:
f = open('readme.txt')
print(f.read())
f.close()
except OSError as reason:
print('文件出错啦'+str(reason))
try:
sum = 1 + '1'
f = open('readme.txt')
print(f.read())
f.close()
except OSError as reason:
print('文件出错啦'+str(reason))
except TypeError as reason:
print('类型出错啦'+ str(reason))
先出现的类型错误。sum,执行完sum之后,后面的不执行,直接到except。
所以报错的是类型出错啦
try:
int('abc')
sum = 1 + '1'
f = open('readme.txt')
print(f.read())
f.close()
except OSError as reason:
print('文件出错啦'+str(reason))
except TypeError as reason:
print('类型出错啦'+ str(reason))
没有具体的异常类型,仍然会出错。
try:
int('abc')
sum = 1 + '1'
f = open('readme.txt')
print(f.read())
f.close()
except (OSError,TypeError,ValueError ):
print('出错啦')
try finally语句
with语句
try:
with open('data.txt','w') as f:
for each_line in f:
print(each_line)
except OSError as reason:
print('出错啦'+str(reason))