python常见错误

简介: python常见错误

1、常见错误列表

异常 描述

NameError 尝试访问一个没有声明的变量

ZeroDivisionError 除数为0

SyntaxError 语法错误

IndexError 索引超出序列范围

KeyError 请求一个不存在的字典关键字

IOError 输入输出错误(比如你要读的文件不存在)

AttributeError 尝试访问未知的对象属性

ValueError 传给函数的参数类型不正确

2、SynaxError (1) SyntaxError: Non-UTF-8 code starting with ‘\xb6’ 编码问题,对中文识别不好,在程序的最上面加上编码格式语句: #coding:gbk如果未解决,可继续添加:#coding:gb2312

(2) SyntaxError: EOL while scanning string literal. 字符串以\结尾或者字符串缺少引号。

3、OSError (1)OSError: [WinError 193] %1 不是有效的 Win32 应用程序 出现场景:python调用动态链接库时出现此错误; 原因:python与调用的dll的位数不一致; 解决方案:创建anaconda虚拟环境,匹配dll位数。

4、ImportError (1)ImportError: cannot import name ‘etree’ from ‘lxml’ 已经成功安装lxml,仍然提示此错误,个人解决方案,更换为python3.5.

5、UnicodeEncodeError (1)UnicodeEncodeError: ‘gbk’ codec can’t encode character ‘\ufeff’ in position 0: illegal multibyte sequence 出现原因:python自身编码的局限性导致,不能打印所有的Unicode字符。 解决方案:指定编码格式为gbk,如果仍然不能解决,可以查看一下不能识别的字符有没有实际意义,如果无实际意义,使用replace替换掉。

6、UnicodeDecodeError (1)UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0x80 in position 32: illegal multibyte sequence 产生场景:读取txt文件时报错。 解决方法:在open函数中指定解码格式,encoding = ‘utf-8’。

7、pycharm使用过程中遇到的问题 (1)第三方包安装成功,但是pycharm引入(import)失败 第一种:第三方包的安装路径与指定的解释器路径不一致(anaconda虚拟环境中容易是此种原因),将第三方包直接复制到解释器路径下(lib/site-packages)。 第二种:设置源目录(即需要引用第三方包的程序的最上层目录)。

(2)Pcharm控制台中文乱码 解决方法:setting-fileEncodings–global encoding 设置成GBK,即可。

8、TypeError (1)TypeError: ‘builtin_function_or_method’ object is not subscriptable 原因及解决方案:查看列表里面的len()函数,是不是把小括号写成中括号了。

(2)TypeError:a bytes-like object is required,not ‘str’ 原因:python2和python3字符串兼容问题,python3对文本和二进制数据做了明确区分,文本用unicode编码,为str类型,二进制数据则为bytes类型。 解决方法: encode():将str转换为bytes类型 decode(): 将bytes转为为str  


相关文章
|
4月前
|
程序员 索引 Python
python中常见的错误
【5月更文挑战第15天】
38 1
|
2月前
|
索引 Python
Python中边界条件错误
【7月更文挑战第17天】
36 6
|
2月前
|
Java C++ 开发者
python中常见问题
【7月更文挑战第12天】
55 10
|
11月前
|
Python
【Python基础】Python异常捕获
【Python基础】Python异常捕获
58 0
|
9月前
|
Ruby Python
Python(二十八)python 获取异常信息
在实际的开发工作中,我们光知道异常类型是不够的,我们还需要看到更详细的报错信息。 那么,我们应该如何看到报错信息呢? Python中为我们提供了两个可以查看标错信息的库,sys 模块中的 exc_info,traceback 模块 这是我们第一次使用python的模块 在文件中使用python的模块,需要引入才可以使用。 一:使用 sys 模块中的 exc_info 方法: 1:exc_info() 方法会将当前的异常信息以元组的形式返回,该元组中包含 3 个元素,分别为 type、value 和 traceback,它们的含义分别是: type:异常类型的名称,python异常类型请参照
63 1