【摘要】当今世界充满了各种数据,而python是其中一种的重要组成部分。然而,若想其有所应用,我们需要对这些python理论进行实践。其中包含很多有趣的的过程,然后将其用于某些方面。其中一种应用就是项目的python异常处理。今天环球网校的小编就来和大家讲讲python异常处理。

元组通常包含错误字符串,错误数字,错误位置。

python异常处理实例

以下为单个异常的实例:

#!/usr/bin/python # Define a function here.def temp_convert(var): try: return int(var) except ValueError, Argument: print "The argument does not contain numbers\n", Argument # Call above function here.temp_convert("xyz");

以上程序执行结果如下:

The argument does not contain numbersinvalid literal for int() with base 10: 'xyz'

5、python异常处理触发异常

我们可以使用raise语句自己触发异常

raise语法格式如下:

raise [Exception [, args [, traceback]]]

语句中Exception是异常的类型(例如,NameError)参数是一个异常参数值。该参数是可选的,如果不提供,异常的参数是"None"。

最后一个参数是可选的(在实践中很少使用),如果存在,是跟踪异常对象。

python异常处理实例

一个异常可以是一个字符串,类或对象。 Python的内核提供的异常,大多数都是实例化的类,这是一个类的实例的参数。

定义一个异常非常简单,如下所示:

def functionName( level ): if level < 1: raise "Invalid level!", level # The code below to this would not be executed # if we raise the exception

注意:为了能够捕获异常,"except"语句必须有用相同的异常来抛出类对象或者字符串。

例如我们捕获以上异常,"except"语句如下所示:

try: Business Logic here...except "Invalid level!": Exception handling here...else: Rest of the code here...

6、用户自定义python异常处理

通过创建一个新的异常类,程序可以命名它们自己的异常。异常应该是典型的继承自Exception类,通过直接或间接的方式。

以下为与RuntimeError相关的实例,实例中创建了一个类,基类为RuntimeError,用于在异常触发时输出更多的信息。

在try语句块中,用户自定义的异常后执行except块语句,变量 e 是用于创建Networkerror类的实例。

class Networkerror(RuntimeError): def __init__(self, arg): self.args = arg

在你定义以上类后,你可以触发该异常,如下所示:

try: raise Networkerror("Bad hostname")except Networkerror,e: print e.args

以上就是python异常处理的全部内容。