python异常进一步学习

一、获取异常信息格式
try:
。。。代码1。。。
。。。代码2。。。
。。。代码3。。。
excepty 异常 as 变量名:
。。。代码4。。。
注意:变量名中保存的是异常信息。

try:
    print(1/0)
except ZeroDivisionError as e:
    print('捕获到了异...')
    print(e)#变量名中保存的是异常信息。

二、捕获所有异常格式:
1、格式一
try:
。。。代码1。。。
。。。代码2。。。
。。。代码3。。。
except:
。。。代码4。。。
注意:except 后面不用写任何内容即可。
2、格式二
try:
。。。代码1。。。
。。。代码2。。。
。。。代码3。。。
except Exception:
。。。代码4。。。
注意:Exception是IndexError、ZeroDivisionError。。。的父类。

三、else结构
格式:
tey:
。。。代码1。。。
。。。代码2。。。
。。。代码3。。。
except 异常类型:
。。。代码4。。。
else:
。。。代码5。。。

try:
    print('开始了。。。')
    print(1/0)
    print('结束了。。。')
except ZeroDivisionError:
    print('异常了。。。')
else:
    print('我是else,哈哈')
print('xxx')

四、
try finally结构
格式:
try:
tey:
。。。代码1。。。
。。。代码2。。。
except 异常类型:
。。。代码3。。。
finally:
。。。代码4。。。
注意:无论如何都会执行finally中的代码。

try:
    print(1/0)
    print('xxx')
except ZeroDivisionError:
    print('又报错了哦。。。')
finally:
     print('都得执行我。。。')
print('程序结束了。。。')

五、raise 抛出系统异常
正常方法处理输入用户名输入不得小于3位

while True:
       name=input('请输入用户名(不能少于3位)')
       if len (name)<3:
            print('你的太短了')
            continue
      else:
            pwe=input('请输入密码:')
            print(name,pwd)

手动抛出异常格式:
raise 异常对象(‘异常的描述信息’)

while True:
      try:
           name = input('请输入用户名(不能少于3位)')
           if len(name) < 3:
              raise Exception('你的太短了')
           else:
                 pwd = input('请输入密码:')
           print(name, pwd)
      except Exception as e:#这里面的e接受的是异常信息的描述
           print(e)

猜你喜欢

转载自blog.csdn.net/qq_44240254/article/details/86089648