精华内容
下载资源
问答
  • dir(_builtins_)查看异常类。 类名 描述 BaseException 所有异常的基类 Exception 常规异常的基类 AttributeError 对象不存在此属性 IndexError 序列中无此索引 IOError 输入/输出操作...

    异常=程序出错,错误分为语法错误、运行时刻错误和逻辑错误。

    Python中每一个一场都是类的实例,用异常对象(exception object)来表示异常情况。

    一、异常分类

    dir(_builtins_)查看异常类。

    类名 描述
    BaseException 所有异常的基类
    Exception 常规异常的基类
    AttributeError 对象不存在此属性
    IndexError 序列中无此索引
    IOError 输入/输出操作失败
    KeyboardInterrupt 用户中断执行(通常输入ctrl+c)
    KeyError 映射中不存在此键
    NameError 找不到名字(变量)
    SyntaxError Python语法错误
    TypeError 对类型无效的操作
    ValueError 传入无效的参数
    ZeroDivisionError 除(或取模)运算的第二个参数为0

    二、处理异常

    1、try-except语句

    使用try-except语句捕捉异常,如果异常能够被捕捉到,则不会影响程序运行。

    try:
        正常代码
    except 异常类型:
        出现异常执行代码

    2、空except子句和as

    当无法判定异常是什么,使用空except子句,输出统一的错误,缺点是不知道错误的原因。

    try:
        num1=int(input('enter the first number:'))
        num2=int(input('enter the second number:'))
        print(num1/num2)
    except:
        print('something went wrong!')
    

    使用as来将错误原因输出,as e相当于将捕捉到的这个异常对象命名为e,这个异常对象包含异常的具体信息。

    a=[1,2,3]
    try:
    	print(a[100])
    	print(‘hello’)
    except IndexError as e:
    	print(type(e))
    	print(e)

    3、多个except子句

    except可以指定一个具体的异常,但如果try中抛出的异常不在except中,程序仍会终止运行,因此可以在一个try语句中,写多个except子句。

    a=[1,2,3]
    try:
       print(a[100])
    except IOError as e:
       print(e)
    except IndexError as e:
       print(e)
    

    4、一个except块捕捉多个异常

    可以在一个except中指定多个异常,输出相同的错误。

    try:
        num1=int(input('enter the first number:'))
        num2=int(input('enter the second number:'))
        print(num1/num2)
    except (ValueError,ZeroDivisionError):
        print('invalid input!')
    
    

    5、else语句

    在try语句中,还可以搭配else,如果没有异常,则执行else语句里面的内容。

    try:
        num1=int(input('enter the first number:'))
        num2=int(input('enter the second number:'))
        print(num1/num2)
    except (ValueError,ZeroDivisionError):
        print('invalid input!')
    else:
        print('Aha,everthing is ok')

    6、循环

    在产生异常之后,程序就停止了,可以使用循环,一直连续输入,直到输入正确为止。

    while True:
        try:
            num1=int(input('enter the first number:'))
            num2=int(input('enter the second number:'))
            print(num1/num2)
            break
        except ValueError:
            print('please input a digit!')
        except ZeroDivisionError:
            print('the second number cannot be zero!')

    break的位置不一定是在try里面,还可以在except或else里面,视情况而定。

    try:
        num1=int(input('enter the first number:'))
        num2=int(input('enter the second number:'))
        print(num1/num2)
    except Exception as err:
        print('something went wrong!')
        print(err)
    else:
    	break
    alist=[1,2,3,4,5]
    i=0
    while True:
        try:
         print(alist[i])
        except IndexError:
            print('index error')
            break
        else:
            i+=1

    7、finally子句

    不管是否发生异常,finally子句里面的内容都要被执行。

    def finallyTest():
        try:
            num1=int(input('enter the first number:'))
            num2=int(input('enter the second number:'))
            print(num1/num2)
            return 1
        except Exception as err:
            print(err)
            return 0
        finally:
            print('it is finally clause')
    result=finallyTest()
    print(result)

     

     

     

     

    展开全文
  • python--异常

    2017-07-11 15:54:00
    一、异常: 1、python用异常对象(exception object)来表示异常情况。... 2、raise语句:使用內建的Exception异常类。添加异常信息。 3、查看內建异常的种类: Exception:所有异常的基类。 ...

    一、异常:

           1、python用异常对象(exception object)来表示异常情况。遇到错误时会引发异常。

     

           2、raise语句:使用內建的Exception异常类。添加异常信息。

           

     

            3、查看內建异常的种类:

             

     

              Exception:所有异常的基类。

              AttrbuteError:特性引用或者赋值失败时引发。

              IOError:打开不存在的文件时引发。

              IndexError:使用序列中不存在的索引时引发。

              KeyError:使用映射中不存在的键时引发。

              NameError:找不到名字变量时引发。

              SyntaxError:代码错误时引发。

              TypeError:內建操作或者函数应用于错误类型的对象时引发。

               ValueError:內建操作或者函数应用于正确类型的对象,但该对象使用不合适的值时引发。

               ZeroDivisionError:除法或者模除操作的第二个参数为0时引发。

     

              4、自定义异常类:创建一个类只需要让它继承于內建异常类就可以了。

              

     

              5、捕捉异常:try/except语句。

                   1、 以下代码是用于捕获ZeroDivisionError异常:

                   

                   代码运行结果:

                  

     

                  2、以下代码通过开关控制是否让异常传播。

                  

                  代码运行结果:

                  

     

                3、捕获多个异常:

                

                程序运行结果:

                

     

                4、使用一个块捕获多个异常:

                

     

                5、捕捉对象:记录打印错误信息。

                

     

                6、真正的全捕捉:except:忽略所有的异常类。

                

                7、编写一个除法计算器,直至成功实现除法运算后才退出循环。

                

                 程序运行结果:

                 

     

                8、最后finally子句:用于在可能的异常后进行清理。用于关闭文件或者网络套接字会非常的有用。

                

     

                9、异常和函数:

                     在函数内引发的异常,如果没有被处理,它会传播至函数调用的地方,如果还是未被处理,它会继续传播一直到达主程序。

                     如下程序:由faulty引发的异常通过faulty和ignore_exception传播,直到传播到handle_exception这个函数才被处理。

                     

                    程序运行结果:

                    

     

                  

     

    转载于:https://www.cnblogs.com/bigming/p/7150979.html

    展开全文
  • Python常见异常Exception

    千次阅读 2019-01-10 20:59:04
    异常——Python解释器检测...查看常见异常类 dir(builtins) 常见异常及其描述(每种异常都是一个类的实例) 类名 描述 BaseException 所有异常的基类 Exception 常规异常的基...

    异常——Python解释器检测到错误时会中止程序执行并报告错误类型

    Python中用异常对象表示异常情况,遇到错误时如果异常对象没有被捕捉或处理,则程序会用回溯或跟踪即traceback

    • 查看常见异常类
      dir(builtins)
      在这里插入图片描述

    • 常见异常及其描述(每种异常都是一个类的实例)

    类名 描述
    BaseException 所有异常的基类
    Exception 常规异常的基类
    AttributeError 对象不存在此属性
    IndexError 序列中无此索引
    IOError 输入/输出操作失败
    KeyboardInterrupt 用户中断执行
    KeyError 映射中不存在此键
    NameError 找不到名字(变量)
    SyntaxError Python语法错误
    TypeError 对类型无效的操作
    ValueError 传入无效的参数
    ZeroDivisionError 除(或取模)运算的第二个参数为0
    ConnectionError 与连接相关异常的基类
    展开全文
  • Python异常处理

    2011-12-05 15:20:01
    1. 查看内建的异常类: >>> import exceptions >>> dir(exceptions) 所有这些异常都可以用在raise语句中: >>> raise ArithmeticError 2. 创建自己的异常类: 就像其他类一样-...
    Python 用异常对象(exception object)来表示异常情况。

    1. 查看内建的异常类:
    >>> import exceptions
    >>> dir(exceptions)
    所有这些异常都可以用在raise语句中:
    >>> raise ArithmeticError

    2. 创建自己的异常类:
    就像其他类一样----只要确保从Exception类继承(不管是间接的或者是直接的,也就是
    说继承其他的内建异常类也是可以的)。
    例如:
    class SomeCustomException(Exception): pass

    3. 捕捉异常:
    例如:

    try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    print x/y
    except ZeroDivisionError:
    print "The second number can't be zero!"
    except TypeError:
    print "That wasn't a number, was it?"

    例如:

    try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    except (ZeroDivisionError, TypeError, NameError):
    print 'You numbers were bogus...'


    4. 捕捉对象:
    例如:

    try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    print x/y
    except (ZeroDivisionError, TypeError), e:
    print e


    5. 真正的全捕捉:
    例:

    try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    print x/y
    except:
    print 'Something wrong happened...'


    6. 万事大吉:
    一些坏事发生时执行一段代码,例:

    try:
    print 'A simple task'
    except:
    print 'What? Something went wrong?'
    else:
    print 'Ah... It went as planned.'

    例:

    while True:
    try:
    x = input('Enter the first number: ')
    y = input('Enter the second number: ')
    value = x/y
    print 'x/y is', value
    except:
    print 'Invalid input. Please try again.'
    else:
    break


    7. 最后:
    Finally子句,用来在可能的异常后进行清理,它和try子句联合使用:

    x = None
    try:
    x = 1/0
    finally:
    print 'Cleaning up...'
    del x
    展开全文
  • 异常的概念、识别报错信息 异常处理 断言的基本使用 异常类型(异常就是报错) 常见异常 NameError:名称错误 SyntaxError:语法错误 TypeError:类型错误 ...在 Python所有异常都是继承自 BaseExce...
  • python基础知识12-异常

    2019-06-06 11:11:00
    tree a 查看a内的所有目录.也可以跟绝对路径. a = input('请输入您的密码') 将用户输入保存. 1.异常 异常就是报错. 异常:NameError SyntaxError TypeError 异常本身就是的实例,最大是BaseException. 1....
  • 查看第三方包 自定义的异常总结参考文档 02-python 基础语法知识-04-异常与错误处理 总体 要讲的大纲内容 如下 循环- for while 流程中断 continue break 逻辑操作 and ,or ,not 函数 常用内置函数 (todo) ...
  • 面向对象补充+异常1. 多重继承2. 的多态2.1 多态的概念2.2 多态的使用3....__bases__ 可以获取当前类所有的父类,使用 对象.__bases__即可查看自己的父类。 示例代码: # 先定义两个简单的 class A(object):
  • 认识python的错误

    2019-10-08 06:57:57
    今天我们的内容有点特殊,来认识一下python的异常。我们有时在写python语句的时候,一个回车,出现了一大段乱七八糟的字符,我们根本不知道哪里错了,只能一...Exception: 这是内置的异常类,基本上其他所有异常类...
  • Python练习-源码

    2021-02-20 04:26:02
    这两本书中的所有练习都将在此存储库中作为单个python文件和所有练习的jupyter笔记本进行试运行,以解决。 这将帮助您比较解决方案,以查看代码是否按预期运行。 使用Python编程简介 本章大纲要解决。 第2章基本...
  • Python Cookbook

    2013-07-31 22:33:26
    9.1 同步对象中的所有方法 339 9.2 终止线程 342 9.3 将Queue.Queue用作优先级队列 344 9.4 使用线程池 346 9.5 以多组参数并行执行函数 349 9.6 用简单的消息传递协调线程 351 9.7 储存线程信息 353 9.8 无...
  • 否则可能无法正常调用,抛出连接超时的异常。 证书问题 在 Mac 操作系统安装 Python 3.6 或以上版本时,可能会遇到证书错误:Error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed ...
  • 一、异常# help(BaseException) # ... # Python所有异常,都是继承自 BaseException ,其直接分为四大: # 1.SystemExit:Python 退出异常 # 2.KeyboardInterrupt 键盘打断 # 3.GeneratorExit 生成器退出 ...
  • 尹成Python27天入门到项目实战

    千人学习 2020-12-05 17:04:22
    python字符串与绘图复习变量None变量参与运算没有赋值的情况不会改变绘制立方体绘制五角星时间计算强化实现贷款计算连续...python所有的数据都是对象字符串格式化了解进制图形绘制重点作业以及学习认知方法day3 ...
  • Python核心编程第二版

    热门讨论 2009-07-30 17:07:20
     10.3.5 捕获所有异常   10.3.6 “异常参数”   10.3.7 在应用使用我们封装的函数   10.3.8 else子句   10.3.9 finally子句   10.3.10 try-finally语句   10.3.11 try-except-else-finally:...
  • 深入理解Python中文版高清PDF

    热门讨论 2012-09-04 19:37:04
     10.3.5 捕获所有异常   10.3.6 “异常参数”   10.3.7 在应用使用我们封装的函数   10.3.8 else子句   10.3.9 finally子句   10.3.10 try-finally语句   10.3.11 try-except-else-...
  • 所有的经验都源于你犯过的错误) Don't be one of the leeches. (不要当伸手党) Either outstanding or out. (要么出众,要么出局) Day01~15 - Python语言基础 Day01 - 初识Python Python简介 - Python...
  • Python核心编程第二版(中文)

    热门讨论 2015-04-23 16:40:13
    10.3.5 捕获所有异常 10.3.6 “异常参数” 10.3.7 在应用使用我们封装的函数 10.3.8 else子句 10.3.9 finally子句 10.3.10 try-finally语句 10.3.11 try-except-else-finally:厨房一锅端 10.4 上下文管理 ...
  • 可以原生地处理各种Python异常</li><li>在全面支持Python3.6以后,甚至type checking也可以放到Python中去做</li></ol> 该设计的问题 <ol><li>具有一定工作量<ul><li>feature derivation需要迁往Python<ul><li...
  • 查看和。 请注意,您的解决方案将不会获得评分,也不会以任何方式隶属于Coursera。 如果您的答案与我的不同,并且您认为自己的答案更好,请在创建一个问题。 安装 确保已安装jupyter笔记本。 您可以在找到说明。...
  • Python核心编程(中文第二版)

    热门讨论 2009-10-02 12:08:14
     10.3.5 捕获所有异常   10.3.6 “异常参数”   10.3.7 在应用使用我们封装的函数   10.3.8 else子句   10.3.9 finally子句   10.3.10 try-finally语句   10.3.11 try-except-else-finally:...
  • Python核心编程第二版(ok)

    热门讨论 2009-05-21 08:23:44
     10.3.5 捕获所有异常   10.3.6 “异常参数”   10.3.7 在应用使用我们封装的函数   10.3.8 else子句   10.3.9 finally子句   10.3.10 try-finally语句   10.3.11 try-except-else-finally:...
  • 本资料仅用于学习,请查看后24小时之内删除。 【课程内容】 第1章 01 计算机发展史 02 计算机系统 03 小结 04 数据的概念 05 进制转换 06 原码补码反码 07 物理层和数据链路层 08 网络层和arp协议 09 传输层和应用...
  •  10.3.5 捕获所有异常   10.3.6 “异常参数”   10.3.7 在应用使用我们封装的函数   10.3.8 else子句   10.3.9 finally子句   10.3.10 try-finally语句   10.3.11 try-except-else-finally:...
  •  10.3.5 捕获所有异常   10.3.6 “异常参数”   10.3.7 在应用使用我们封装的函数   10.3.8 else子句   10.3.9 finally子句   10.3.10 try-finally语句   10.3.11 try-except-else-finally:...
  • 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者...1、理解异常的概念,掌握Python中重要的内建异常类以及处理异常的几种方式。 2、掌握raise和assert语句,会抛出自定义的异常,掌

空空如也

空空如也

1 2 3 4
收藏数 67
精华内容 26
关键字:

python查看所有异常类

python 订阅