异常不等于错误,写了异常是为了出现异常不至于程序崩溃,会接着往下运行。语法:
try:
可能出现错误的语句
except 异常类型:
处理方法
可以写多个except:
try:
可能出现异常的语句
except 异常类型1,异常类型2:
处理方法
except 异常类型3:
处理方法
Exception类型为所有异常类的基类,包括所有的异常类型
except 异常类型 as 名称:
print(名称)
会输出异常的原因
finally: 一定会执行,有return也会执行finally
可以自定义一个异常类型:
class ageException(Exception):
pass
def nl():
s=int(input("请输入年龄:"))
if s<1 or s>100:
raise ageException("cuo wu le")
try:
nl()
except ageException as se:
print(se) #输出结果: cuo wu le
异常日志就是把产生的异常记录在一个文件里,固定的格式为:
import logging
LOG_FORMAT = "%(asctime)s - %(levelname)s - %(message)s"
logging.basicConfig(filename='存储记录的文件名.txt',level=logging.DEBUG,format=LOG_FORMAT)
异常分为很多等级,等级越高,存储的异常越仔细