异常处理

#程序一旦发生错误,就从错误的地方停下来,不在继续执行后面的内容
#谁用try和expect就能处理异常
    #try是我们需要处理的代码
    #except后面跟一个错误类型,当代码发生错误类型符合的时候
    #except支持多分支
    #万能异常处理:
        #有了万能的处理机制仍然需要把能预测到的问题单独处理
        #单独处理的所有内容都应该写在万能异常之前
    #else:没有异常的时候执行else中的代码
    #finally:不管代码是否异常,都会执行
        #finally和return相遇的时候,依然会执行
        #函数里做异常处理用,不管是否异常都会去做一些收尾工作
try:
    # [][3]
    ret = int(input('number》》》》'))
    print(ret * '*' )
# except ValueError:
#     print('您输入的内容有误,请重新输入')
except IndexError:
    print('超出列表的最大长度了')
# except ValueError:
#     print('输入的数据类型有误')
except Exception as error:   #万能异常
    print('你错了,老铁',error)
else:
    print('没有异常的时候处理else里内容')

#执行结果  执行finally了
          #True
#注意事项:执行try中会先执行return,执行完后发现有finally所以先执行finally
          #最后在return

# def fun():
#     try:
#         f = open('file','w')
#         return True
#     except Exception:
#         return False
#     finally:
#         print('执行finally了')
#         f.close()
# print(fun())
原文地址:https://www.cnblogs.com/jdwy24/p/13993156.html