Python异常处理

异常处理

  • 如果没有异常处理,当程序遇到错误时,将会崩溃,终止运行
  • 异常处理指的是,在代码部分,考虑到程序可能会出现的错误,在代码中捕获
    出现的错误,并给出解决方案(补救代码)
  • 语法
try:
    有可能发生异常的语句
except 异常1:
    补救代码
except (异常2, 异常3):  
    补救代码
else:
    不发生异常才执行的语句
finally:
    不管异常是否发生都要执行的语句

在这里插入图片描述

try:
    n = int(input('数字: '))
    result = 100 / n
except (ValueError, ZeroDivisionError) as e:   #将错误信息赋值给变量
    print('只接受非0数字', e)   #输出错误信息
except (KeyboardInterrupt, EOFError) as e:
    print('bye', e)
    exit(0)   #终止程序运行,returncode为0
else:
    print(result)
finally:
    print('Done')

触发异常raise

def get_info(name, age):
    if not 0 < age <= 120:
        raise ValueError('年龄超出范围(1-120)')
    print('%s is %s years old' % (name, age))

if __name__ == '__main__':
    get_info('dc', 200)

断言异常assert

def get_info2(name, age):
    assert 0 < age <= 120, '年龄超出范围(1-120)'
    print('%s is %s years old' % (name, age))

if __name__ == '__main__':
    get_info2('plj', 188)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章