目录

Python异常学习笔记(持续更新)

什么是异常

  • Python用异常对象来表示异常。
  • 遇到错误后,会引发异常,如果异常对象未被处理或捕捉,程序就会用所谓的回溯终止程序的执行。

raise语句

  • 运行raise Exception就会引发一个没有任何有关错误信息的异常
  • 当然你也可以自定义异常是输出的信息raise Exception("this is exception msg")

自定义异常类

	class MyException(Exception):
	  pass;

异常的捕获

	try:
		raise Exception("this is exception msg")
	except Exception:
		print("i try it")
  • 如果我们捕获了异常,但是这个异常不是我们想处理的,我们该如果传递它给上一级呢?

  • 我们可以使用raise,不需要带任何参数

      try:
      	raise Exception("this is exception msg")
      except Exception:
      	raise ;
    
  • 当然,我们可以这样子打印错误

      try:
      	raise Exception("this is exception msg")
      except Exception as e:
      	print(e)
    
  • 当然,如果你希望不管是什么异常都进行捕捉,也可以这样

      try:
      	raise Exception("this is exception msg")
      except:
      	print('i get all exception msg')
    
  • 不仅如此,假如没有发生异常时,我们需要做点事情,此时该如何处理呢?

      try:
      	print("hello, I am not exception")
      	# raise Exception("this is exception msg")
      except :
      	print("i am exception")
      else:
      	print("so good")
    
  • 像上面那样子,我们就可以区分处理了。

  • 当然,如果我们像不管是否发生异常,我们都要做一些事情,此时我们就可以这样子了

      try:
      	print("hello, I am not exception")
      	raise Exception("this is exception msg")
      except :
      	print("i am exception")
      else:
      	print("so good")
      finally:
      	print("is done")