zoukankan      html  css  js  c++  java
  • python使用try...except语句处理异常

    try....except语句语法格式:

    try:

      <语句>

    except(异常名称):

      <语句>

    注意在except语句中的括号中的异常名称是可以省略的,当省略时就是全捕捉

    try...except语句的执行步骤

    1.执行try字句

    2.如果没有异常发生则会跳过except子句,try字句执行之后结束

    3.如果在执行try字句时发生了异常,如果与except中异常名称相同,则会执行except字句

    4.如果try字句中发生了异常,但与except中的异常名称不符合则会传递到上层的try中,即输出起异常类型

    eg:

    try:

      10/0

    except ZerpDivisionError:

      print("数值不能除以0")

    全捕捉

    使用一个except语句处理所有的异常

    eg:

    s = [1,2,3,4]

    def get(n):

      try:

        if n < 200:

          data = s[4]

        else:

          file = open(100,200,300,400)

      except:

        print("gain all Error")

    get(100)

    get(300)

    excpet字句中忽略所有的异常,从而让程序输出自定义的异常信息

    异常中的else

    使用else语句来处理没有异常的情况。注意使用else语句时,一定要有except语句。类似于只有有if才能有else

    def get(n):

      if n < 100:

        data = s[4]

      elif 200 <= n <= 300:

        data = s[4]

    except:

      print("Error")

    else:

      print("True")

    添加一个else语句可以使我们能够更好的判断程序执行情况

    抛出异常

    python中是用raise语句抛出一个指定的异常

    eg:

    raise NameError()

    raise唯一的一个参数指定了要抛出的异常。

    结束python解释器的运行

    raise  SystemExit

    笨鸟先飞
  • 相关阅读:
    无责任Windows Azure SDK .NET开发入门篇二[使用Azure AD 进行身份验证]
    无责任Windows Azure SDK .NET开发入门篇一[Windows Azure开发前准备工作]
    了解ASP.NET5 Web应用程序结构
    Hello ASP.NET5
    CentOS7 防火墙 firewall-cmd
    C# 中使用WebClient 请求 https
    使用 gridfs-stream 存储文件遇到的一个坑。
    overflow的几个坑
    IIS7启用静态压缩
    创建高性能移动 web 站点【转载】
  • 原文地址:https://www.cnblogs.com/zoutingrong/p/12241593.html
Copyright © 2011-2022 走看看