异常处理

异常处理

 

1/0
name
2+'3'
[][3]
{}['k']

try:   print('1111')   # 1/0   print('2222')   # name   # 2+'3'   # [][3]   # {}['k']   ret = int(input('number >>>'))   print(ret*'*') except ValueError:   print('输入的数据类型有误')
except Exception:   print('你错了,老铁') else:   print('没有异常的时候执行else中的代码')   print('===========')

def func():   try:     f = open('file','w')     ''''''     return True   except:     return False   finally:     print('执行finally了')     f.close() print(func())

 

程序一旦发生错误,就从错误的位置停下来了,不在继续执行后面的内容
使用try和except就能处理异常
try是我们需要处理的代码
except 后面跟一个错误类型 当代码发生错误且错误类型符合的时候 就会执行except中的代码
except支持多分支


有没有一个能处理所有错误的类型 : Exception
有了万能的处理机制仍然需要把能预测到的问题单独处理
单独处理的所有内容都应该写在万能异常之前


else : 没有异常的时候执行else中的代码


finally : 不管代码是否异常,都会执行
  finally和return相遇的时候 依然会执行
  函数里做异常处理用,不管是否异常去做一些收尾工作

 

try:
  main()
except Exception:
  pass

try:
  print('1111')
  # 1/0
  print('2222')
  # name
  # 2+'3'
  # [][3]
  # {}['k']
  ret = int(input('number >>>'))
  print(ret*'*')
except Exception as error:
  print('你错了,老铁',error)

 

转载于:https://www.cnblogs.com/liyuexi/p/10753688.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值