# 常见异常,更多异常用法,抛出异常 ## 1,异常 ``` try: open('abc.txt','r') print(a) except BaseException as msg: print(msg) ``` ## 2,更多异常用法 ``` try: a = '异常测试:' print(a) except NameError as msg: print(msg) else: print('没有异常时执行') # 不管是否出现异常,都会执行 try: print(a) except NameError as msg: print(msg) finally: print('不管是否出现异常,都会被执行') ``` ## 3,抛出异常 ``` #定义 say_hello() 函数 def say_hello(name=None): if name is None: ​ raise NameError('"name" cannot be emoty') else: ​ print('hello, %s' %name) # 调用say_hello () 函数 # say_hello() ```