您的位置:首页 > 编程语言 > Python开发

2.2.1 Python中的错误和异常

2018-04-03 16:05 302 查看
1,错误在编程的过程中错误是在所难免的,有可能写错了,少符号之类的等等。这就需要我们自己去进行调试修改了。首先需要了解错误。SyntaxErrors:语法错误Python中的常见错误之一>>> for i in range(10)SyntaxError: invalid syntax上面那句话因为缺少冒号“:”(英文半角),导致解释器无法解释,于是报错逻辑错误,是在没有语法错误时,可能会出现。逻辑错误可能会由于不完整或者不合法的输入导致,也可能是无法生成、计算等,或者是其他逻辑问题。2,异常>>> 2/0
Traceback (most recent call last): File "<pyshell#2>", line 1, in <module> 2/0ZeroDivisionError: integer division or modulo by zero当Python抛出异常的时候,首先“跟踪记录(Traceback)”,还可以给它取一个更优雅的名字“回溯”,然后才显示异常的详细信息,标明异常所在位置(文件、行或某个模块)。最后一行是错误类型以及导致异常的原因。一般常见的异常:
异常描述
NameError尝试访问一个没有申明的变量
ZeroDivisionError除数为0
SyntaxError语法错误
IndexError索引超出数据范围
KeyError请求一个不存在的字典关键字
IOError输入/输出错误:读取文件不存在
AttributeError尝试访问未知的对象属性
Nam
4000
eError:>>> a
Traceback (most recent call last): File "<pyshell#5>", line 1, in <module> aNameError: name 'a' is not definedPython中虽然不需要在使用变量之前先声明类型,但也需要对变量进行赋值,然后才能使用,不被赋值的变量,不能在Python中存在ZeroDivisionError:>>> 2/0
Traceback (most recent call last): File "<pyshell#8>", line 1, in <module> 2/0ZeroDivisionError: integer division or modulo by zero意思就是被除数不能为0SyntaxError:>>> for i in range(10)SyntaxError: invalid syntax这种错误发生在Python代码编译的时候,当编译到这一句时,解释器不能将代码转化为Python字节码就报错,它是在程序运行之前出现的IndexError和KeyError:>>> a = [1,2,3]>>> a[1]2>>> a[4]
Traceback (most recent call last): File "<pyshell#13>", line 1, in <module> a[4]IndexError: list index out of range
>>> b = {"hello":"zhangsan"}>>> b["hello"]'zhangsan'>>> b["aaa"]
Traceback (most recent call last): File "<pyshell#16>", line 1, in <module> b["aaa"]KeyError: 'aaa'在编程实践中,特别是循环的时候,常常由于循环条件设置不合理出现这种类型的错误。IOError:>>> f = open("opt/test.csv")
Traceback (most recent call last): File "<pyshell#19>", line 1, in <module> f = open("opt/test.csv")IOError: [Errno 2] No such file or directory: 'opt/test.csv'一般在读取和上传文件的时候会出现,一定要确定文件路径是否正确AttributeError:>>> class Test(object): print "这是个异常测试"
这是个异常测试>>> t = Test()>>> t<__main__.Test object at 0x02F10770>>>> t.aa
Traceback (most recent call last): File "<pyshell#29>", line 1, in <module> t.aaAttributeError: 'Test' object has no attribute 'aa'属性不存在,出现错误。这只是几个常见的错误,编程过程中还会遇到很多错误,细心的检查代码,不慌张,你会发现错误没什么可怕的,进步就在不经意间。注意:学会使用百度,谷歌等搜索引擎
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息