py07_01:异常处理

异常处理的基本语言

try:
    number = int(input('请输入一个整数: '))
except:  
    print('请输入一个正确的整数')

print('-' * 50)

 

 

 

 

 

 处理多个异常

try:
    number = int(input('请输入一个整数: '))
    results = 8/number
    print(results)
except ZeroDivisionError:
    print('除数不能为0'.center(50,'1'))
except ValueError:
    print('请输入正确的整数'.center(50,'2'))

 

 

处理未知错误

try:
    number = int(input('请输入一个整数: '))
    results = 8/number
    print(results)
# except ZeroDivisionError:
#     print('除数不能为0'.center(50,'1'))
except ValueError:
    print('请输入正确的整数'.center(50,'2'))

except Exception as a:   # 此处a是未知错误的变量,变量名随意。
    print('未知错误:',a)

 

异常处理完整语法

 

try:
    number = int(input('请输入一个整数: '))
    results = 8/number
    print(results)
# except ZeroDivisionError:
#     print('除数不能为0'.center(50,'1'))
except ValueError:
    print('请输入正确的整数'.center(50,'2'))

except Exception as a:   # 此处a是未知错误的变量,变量名随意。
    print('未知错误:',a)

else:
    print('没异常才被执行')

finally:
    print('无论有无异常,100%执行'.center(50, '-'))

 

 

异常的传递性

 

def input_password():
    pwd = input('输入密码:')
    if len(pwd) >= 8:
        return pwd  # return,结束函数,下面不执行

    print('主动抛出异常')
    ex = Exception('密码长度不够')

    # 2> 主动抛出异常
    raise ex


try:
    input_password()
except Exception as result:
    print('未知错误:', result)

 

posted on 2020-03-22 13:54  yeyu1314  阅读(205)  评论(0)    收藏  举报