python常见异常和异常捕获

Python012

python常见异常和异常捕获,第1张

NameError错误,比如:

结果

SyntaxError错误,比如:

结果:

ValueError错误,比如:

结果:

IndexError错误,比如:

结果:

IndentationError错误,也就是缩进错误,比如:

结果:

KeyError错误,比如:

结果:

AttributeError错误,属性错误,比如

结果:

对特定的错误进行捕获 ,用as可以自定义自己想要的提示信息,比如:

结果:

捕获多个异常 ,需要注意的是捕获多个异常时要用(),因为except后面只能接一个参数,比如:

结果:

捕获全部异常时,可以用Exception,比如:

结果:

自定义错误信息,比如:

结果:

异常捕获中finally的使用。一般用于不管程序是否错误,程序最后都应该执行的步骤,例如在文件操作中,关闭文件是最后必须执行的操作,比如:

结果:

8. 错误和异常

至今为止还没有进一步的谈论过错误信息,不过在你已经试验过的那些例子中,可能已经遇到过一些。Python 中(至少)有两种错误:语法错误和异常( syntax errors 和 exceptions )。

8.1. 语法错误

语法错误,也被称作解析错误,也许是你学习 Python 过程中最常见抱怨:

>>>while True print('Hello world')

File "

", line 1, in ?

while True print('Hello world')

^

SyntaxError: invalid syntax

语法分析器指出错误行,并且在检测到错误的位置前面显示一个小“箭头”。 错误是由箭头 前面 的标记引起的(或者至少是这么检测的): 这个例子中,函数 print() 被发现存在错误,因为它前面少了一个冒号( ':' )。 错误会输出文件名和行号,所以如果是从脚本输入的你就知道去哪里检查错误了。

python异常处理的四种方法:

一、使用c#,nuget管理包上下载的ironPython安装包

尝试后发现,对引用了numpy等第三方库的python代码,会报找不到模块XX的错误,上网查证后发现此问题基本难以解决

二、使用c++程序调用python文件,然后将其做成动态链接库(dll),在c#中调用此dll文件

限制:实现方式很复杂,并且受python版本、(python/vs)32/64位影响,而且要求用户必须安装python运行环境

三、使用安装好的python环境,利用c#命令行,调用.py文件执行

优点:执行速度只比在python本身环境中慢一点,步骤也相对简单

缺点:需要用户安装配置python环境。