标签:如何 UNC value one except key range close otf
语法错误:
在程序执行前就规避掉,不应该留到程序中来进行异常处理
异常:
在编译阶段没问题,在执行阶段才报错
异常出现后的现象:程序停止执行
l = [‘登陆‘,‘注册‘] try: num = int(input(‘num : ‘)) print(l[num - 1]) except ValueError: print(‘输入了错误的内容‘) except IndexError: print(‘您输入的内容不在范围内‘) print(‘其他内容‘)
也可以写到一起
l = [‘登陆‘,‘注册‘] try: num = int(input(‘num : ‘)) print(l[num - 1]) #即便是放在try语句中的内容,在遇到报错之后也会中断这段语句的执行
except (ValueError,IndexError): #写到一起 print(‘输入了错误的内容‘) print(‘其他内容‘)
except Exception
无论什么错误 它都能接收,一般放在最后面 不然把普通报错都接收了
try: l = [] l[3] # IndexError import Index # ModuleNotFoundError open(‘aaaaaa‘) # FileNotFoundError 1/0 # ZeroDivisionError dic = {} dic[‘k‘] # KeyError except Exception: print(‘异常啦‘)
把报错原因赋值给一个变量
try: l = [] l[3] # IndexError import Index # ModuleNotFoundError open(‘aaaaaa‘) # FileNotFoundError 1/0 # ZeroDivisionError dic = {} dic[‘k‘] # KeyError except Exception as e: print(e) #list index out of range
try: 可能发生异常的代码 三行 except 错误类型: 处理的代码 try: 可能发生异常的代码 三行 except 错误类型1: 处理的代码1 except 错误类型2: 处理的代码2 try: 可能发生异常的代码 三行 except (错误类型1,错误类型2): 处理的代码 try: 可能发生异常的代码 三行 except (错误类型1,错误类型2): 处理的代码 except Exception as e: print(e)
try: pass# 发邮件的逻辑 except ValueError: print(‘触发了一个name error‘) else: pass 汇报这段代码顺利的执行了 : 发短信通知,记录到文件中
无论如何都要执行的函数 不会因为报错 或者return停止
一般用于收尾工作,打开了一个文件,占用了一个网络资源,打开了一个和数据库的链接 然后关闭
try: name = 123 except NameError: print(1111111) finally: #并不会因为报错就会停止 print(‘执行我啦‘)
def func(): try: f = open(‘content‘) return f.read() finally: #并不会因为return就会停止 f.close() print(‘closed‘) func()
标签:如何 UNC value one except key range close otf
原文地址:https://www.cnblogs.com/qq752059037/p/9630832.html