抛出异常: class Widget: def __init__(self,size=(40,40)): self. _size def resize(self,width,height): if width<0 or height<0: #抛出异常 raise ValueError return c def is_prime(self,n): if n<=1: return false #python main__”: a=Widget() b=a.add(2,1) print(b) flag=a.is_prime(3) print(flag) 捕获异常 self.widget.getSize(),(20,30)) def test_resize2(self): try: self.widget.resize(-10,10) #捕获异常
python提供了2个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。 一般情况下,在Python无法正常处理程序时就会发生一个异常。 异常是Python对象,表示一个错误。 当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。 异常处理 捕捉异常可以使用try/except语句。 如果当try后的语句执行时发生异常,python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常)。 Python的内核提供的异常,大多数都是实例化的类,这是一个类的实例的参数。
领8888元新春采购礼包,抢爆款2核2G云服务器95元/年起,个人开发者加享折上折
python的异常分为两种,1)、语法错误,在python解释器的语法检测中不通过不能运行代码 2)、异常,python程序运行期检测到的错误被称为异常。 当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。 1)运行期检测到的错误被称为异常,python的语法检测无法检查这样的错误。 2)python的标准异常类 BaseException 为所有异常的基类,Exception 为常规错误的基类 其它python的异常类可以到这里看(http://www.runoob.com/python 这里就不展示代码了 4、异常的传递 在发生异常的语句中没有处理异常的语句,异常将向上层传递,直到遇到处理异常的语句,或python解释器终止程序 1 def test2(): 2 int("
python异常 异常列表 下表是python的异常列表,我们通常使用Exception即可,它包含了常规错误。 ReferenceError 弱引用(Weak reference)试图 RuntimeError 一般的运行时错误 NotImplementedError 尚未实现的方法 SyntaxError Python Python程序的语法是正确的,在运行它的时候,也有可能发生错误。 运行期检测到的错误被称为异常。 异常处理 python可以使用try-except语句来捕捉异常。 例如: try: result = 3/2 except Exception as e: print(e) else: print("OK") 程序执行结果如下: OK python
最长用到的异常处理的形式: try: 正常的操作 except: 发生异常,执行这块代码 else: 如果没有异常执行这块代码 finally: 不管如何,最后一定要执行的代码
Python异常是一个对象,表示错误或意外情况 Python检测到一个错误时,将触发一个异常 1.Python可以通过异常传道机制传递一个异常对象,发出一个一场情况出现的信号 2.程序员也可以在代码中手动触发异常 Python异常也可以理解为:程序出现了错误而在正常控制意外采取的行为 第一阶段:解释器触发异常,此时当前程序流将被打断 第二阶段:异常处理,如忽略非致命错误、减轻错误带来的影响等 二、异常的公用 1 .错误处理 python的默认处理:停止程序,打印错误消息 使用try语句处理异常并未从异常中恢复 2.事件通知 用于发出有效状态信号 3.特殊情况处理 无法调整代码去处理的场景 4.终止行为 try/ Python异常是内置的经典类Exception的子类的实例 为了向后兼容,Python还允许使用字符串或任何经典类实例 Python2.5之后,Exception是BaseException继承的新式子类 Python自身引发的所有异常都是Exception的子类实例 大多的标准异常都是由StandardError派生的,其有3个抽象的子类 ArithmeticError 由于算术错误而引发的异常基类
异常是一个事件,该事件会在程序执行过程中发生,将影响程序的正常执行。一般情况下,在Python无法正常处理程序时就会发生一个异常。异常是Python对象,表示一个错误。 当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。 异常处理 Python中捕捉异常可以使用try/except语句。 try的工作原理是,当开始一个try语句后,python就在当前程序的上下文中作标记,这样当异常出现时就可以回到这里,try子句先执行,接下来会发生什么依赖于执行时是否出现异常。 (1)如果当try后的语句执行时发生异常,python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常); (2)如果在try 后的语句里发生了异常,却没有匹配的except子句,异常将被递交到上层的try,或者到程序的最上层(这样将结束程序,并打印缺省的出错信息); (3)如果在try子句执行时没有发生异常,python将执行
在python中不同的异常可以用不同的类型(python中统一了类与类型,类型即类)去标识,不同的类对象标识不同的异常,一个异常标识一种错误 AttributeError #试图访问一个对象没有的树形 : python解释器去执行程序,检测到了一个错误时,触发异常,异常触发后且没被处理的情况下,程序就在当前异常处终止,后面的代码不会运行 #一个简单得例子, >>> Print("Hello World python特定的语法结构捕获异常 #异常捕获 单个分支 try: 逻辑代码(被捕获得内容) except 异常类型: 检测到异常,就执行这个位置的逻辑 # 多个分支捕获 # 当PYthon脚本以_()选项编译为字节码文件是,assert语句将被移除以提高运行速度。 当发生异常时Python会回溯异常,给出大量的提示,可能会给程序员的定位和纠错带来一定的困难,这是可以使用sys模块回溯最近一次异常。
主动抛异常 1. 抛异常 有时,程序需要主动抛出异常,因为某些情况下,你需要反馈消息给更上层的调用者,告诉它有一些异常情况发生,而你抛出异常的地方,没有能力处理它,因此需要向上抛出异常。 这种情况为什么不让系统自己抛出异常呢? 一个原因是上层的调用者本身就希望能够捕获有别于系统异常的自定义异常,二来,有些情况下,程序的逻辑是没有异常的,但是,从业务角度考虑,的确是一个不寻常的情况,因此需要我们主动抛出异常。 ‘__main__’: divide(10, 5) divide(10, 0) 抛出异常时,你可以指定抛出哪个异常,如果你不想指定,那么可以抛出异常Exception, 它是所有异常的父类 def divide 自定义异常类 在程序里引入自定义的异常类,可以让代码更具可读性,同时对异常的划分更加精细,那么在处理异常时也就更加具有针对性,自定义异常继承自Exception,或者那些类本身就继承自Exception
抛出异常 Python 使用 raise 语句抛出一个指定的异常。 if __name__ == '__main__': try: # 捕获异常 # 调用分苹果的函数 except ZeroDivisionError: # 处理异常 except ValueError as e: print("\n出错了 ~_~ ——",e) 运行结果为: raise 唯一的一个参数指定了要被抛出的异常。 它必须是一个异常的实例或者是异常的类(也就是 Exception 的子类)。 如果你只想知道这是否抛出了一个异常,并不想去处理它,那么一个简单的 raise 语句就可以再次把它抛出。
用法:命令行python unique.py -f file.txt 输出:去除重复字符后的output.txt # -*- coding:utf-8 -*- #auther_cclarence_2016
老师让把每一次写东西遇到的问题都记录下来,个人觉得很有用,就以此为第一篇博文吧⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄ 在写K-Means聚类时,对文本分词处理遇到去标点的问题,之前一直使用的是 .translate
Python版本:3.4.1 >>> import re >>> punc = '[,.!\']' >>> data = 'a,b.c!
本文是笔者日常使用Python进行爬虫的简要记录。 爬虫,简单说就是规模化地采集网页信息,因为网络像一张网,而爬虫做的事就像一只蜘蛛在网上爬,所以爬虫英文名就是spider。 笔者几乎只用Python,也只会用Python来进行爬虫,所以本文是讲如何用Python来进行爬虫。写这篇文章一是分享,二是把常用代码记录下来,方便自己查找。 检查请求头 服务器端检查请求头,如果发现异常,就阻止请求。最常见的检查'User-Agent'一项,看是否是正常的真实的浏览器。或者检查'Referer'一项是否正常。 ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=python&oq=%25"(后面还有一长串),很多参数一眼看上去不知道是什么意思,也无从获取。 本文是笔者使用Python进行爬虫的一个简要记录,仅供大家参考。由于只是一个业余使用者,所以文中肯定有不少概念和代码使用上的错误,希望大家不吝指教。
call last): File "<pyshell#0>", line 1, in <module> print(a) NameError: name 'a' is not defined python 异常处理的语句 try: 语句块 except: 异常处理的语句 python中,异常处理是通过try--except语句实现的,try检测语句块中的错误,except语句是捕获异常 except FileException as e: print('error ',e.arg) 结果是: IPython 6.2.1 -- An enhanced Interactive Python . error \home 时间好快啊,快点结束python,我准备玩Java了,这才是我主要的方向. 参考文献 Python3 错误和异常
python 是一门编程语言,是一门完全面向对象的编程语言。 ①异常语法 try: # 测试语句块 suite1 except exception1: # 如果测试语句块 suite1 中发生 exception1 异常时执行 suite 2 except (exception2, exception3): # 如果测试语句块 suite1 中发生元组中任意异常时执行 suite 3 # as 把异常的原因赋值给 reason except exception4 as reason: # 如果测试语句块 suite1 发生 exception4 的异常时执行 suite 4 except: # 如果测试语句块 suite1 发生异常在所列出的异常之外时执行 suite 5 else: # 如果测试语句块 suite1 中没有发生异常时执行 suite 5 finally: # 不管测试语句块 suite1 中有没有发生异常都会执行
更多 参考: https://www.cnblogs.com/shangpolu/p/7206348.html
区分Exception和Syntax Error 在写Python程序的时候经常会报错,报错通常有以下两种情况: 语法错误(Syntax Error): 部分语法错误属于异常 异常(Exception) ^ SyntaxError: invalid syntax 当代码不符合Python语法的时候就会抛出SyntaxError。 异常 Python用异常对象来表示异常情况。遇到错误后,会引发异常。 异常层次结构 Python 3.5.2中内置异常的类层次结构如下:参考标准库 BaseException # 所有异常的基类 +-- SystemExit # 程序退出/终止 +-- KeyboardInterrupt BaseException 除SystemExit,KeyboardInterrupt,GeneratorExit三种异常外都继承自Exception 捕获异常 捕获异常可以使用try/except语句 在函数内引发异常时,如果异常没有被捕获到,那么它就会被传播到函数被调用的地方。
抛出异常的完整个写法: try: # 尝试执行的代码 pass except Exception [错误类型]: # 针对错误类型的处理 1 如果你知道会发生什么异常的话 pass except Exception [错误类型]: # 针对错误类型的处理 2 如果你知道会发生什么异常的话 pass except Exception as result : # 打印错误信息 未知的异常处理 print(result) else: # 没有发生异常执行的代码 pass finally: # 无论是否有异常都会执行的代码 print("无论是否有异常都会执行的代码") 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。
一.异常的概念 一般情况,python无法正常处理程序时,就是会产生异常,举个例子: 1.大家都知道分母不能为0,如果分母为0,程序必然崩溃; x = 3/0 程序崩溃/报错:ZeroDivisionError as e: print("异常说明:",e) print("程序正常结束") 输出结果: 异常说明: [Errno 2] No such file or directory: 'python.txt ") # 无论是否发生异常都将会执行最后的代码 print("程序正常结束") 输出结果: 异常说明: [Errno 2] No such file or directory: 'python.txt 四.重点总结 在python开发中,为了增加程序的健壮性,异常处理try…except…是必须掌握的内容. 猜你喜欢: 1.python文件读写操作 2.python内置函数input/eval 转载请注明:猿说Python » python异常处理
扫码关注腾讯云开发者
领取腾讯云代金券