Python疑难杂症02----解决UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0

我的Linux服务器的Python版本是2.*,在将中文encode(UTF-8)的时候出现了UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe6 in position 0: ordinal not in range(128)的问题。而在3.*中没有问题。

解决方法:

在代码前端加入

import sys
reload(sys)
sys.setdefaultencoding('utf8')

Python 2.x,字符编码方面,设计的不好。字符串包含两种----->str字符串(此时字符串的编码类型,对应着你的Python文件本身保存为何种编码有关)和unicode字符串

而在Python 3.*中,字符串则是unicode编码的str。上面这个问题,就是Python2.*渣编码的一个体现

如果有什么疑问欢迎到我的微信公众号与我探讨~

Python疑难杂症02----解决UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0

时间: 2024-10-07 01:50:39

Python疑难杂症02----解决UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0的相关文章

解决UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)

kilo版,horizon界面用中文,删除时报错."UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)" 出错原因就是python的str默认是ascii编码,和unicode编码冲突,就会报这个标题错误.那么该怎样解决呢? 解决方法如下: vim /usr/lib/python2.7/site-packages/horizon/tables/

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 9: ordinal not in range(128)

系统:Ubuntu 15.04 Spyder版本:spyder 2.3.2+dfsg-1ubuntu1 运行python程序出现错误UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 9: ordinal not in range(128) 如下图所示: 解决方法: 在程序开头加上这三行: sys () .() UnicodeDecodeError: 'ascii' codec can't decode byt

运行python代码报错UnicodeDecodeError: 'ascii' codec can't decode byte 0xe7 in position 91: ordinal not in range(128)的解决办法

1.通过搜集网上的资料,自己多次尝试,问题算是解决了,在代码中加上如下几句即可: import sys reload(sys) sys.setdefaultencoding('utf-8') 2.原因就是Python的str默认是ascii编码,和unicode编码冲突,混淆了python2 里边的 str 和 unicode 数据类型. 3.python3 区分了 unicode str 和 byte arrary,并且默认编码不再是 ascii. 运行python代码报错UnicodeDec

Python报错“UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)”的解决办法

最近在用Python处理中文字符串时,报出了如下错误: UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)   1.原因 因为默认情况下,Python采用的是ascii编码方式,如下所示: ?? python -c "import sys; print sys.getdefaultencoding()" ascii ?? 而Python在进行编

解决UnicodeDecodeError: 'ascii' codec can't decode byte 0xcf in position 7: ordinal not in range(128)

在Windows下同时装了Python2和Python3,但是在使用命令给pip更新的时候,出现了以下错误: 解决办法:修改mimetypes.py文件,路径位于python的安装路径下的Lib\mimetypes.py文件.在import下添加如下几行,将编码设置为'gbk': 1 if sys.getdefaultencoding() != 'gbk': 2 reload(sys) 3 sys.setdefaultencoding('gbk') 成功解决,如图: 解决UnicodeDecod

Windows下使用pip安装python包是报错-UnicodeDecodeError: 'ascii' codec can't decode byte 0xcb in position 0

先交待下开发环境: 操作系统:Windows 7 Python版本:2.7.9 Pip版本:6.1.1 其他环境忽略 在windows下使用pip下载python包,出现如下错误 [plain] view plain copy Collecting xxxxxx Exception: Traceback (most recent call last): File "D:\Python27\lib\site-packages\pip-6.0.8-py2.7.egg\pip\basecommand.

Python运行时遇到UnicodeDecodeError: 'ascii' codec can't decode byte 0xb0 in position 1: ordinal not in range(128)的问题

找到报错的地方.在前一行加上: reload(sys) sys.setdefaultencoding('utf-8') 再运行就可以了. Python的字符串真的是麻烦啊. Bon Appetite~ Python运行时遇到UnicodeDecodeError: 'ascii' codec can't decode byte 0xb0 in position 1: ordinal not in range(128)的问题

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe7 in position 0: ordinal not in range(128)的解决

在用爬虫爬取网络小说的时候出现该问题. 估计是字符格式转换格式的错误. 暂时无法解决,搜索了其他博主的解决方案. 以下两个方案靠谱: <一>适用于全篇 1 import sys 2 default_encoding = 'utf-8' 3 if sys.getdefaultencoding() != default_encoding: 4 reload(sys) 5 sys.setdefaultencoding(default_encoding) <二>适用于单个字符的转换 1 u

解决UnicodeDecodeError: &#39;ascii&#39; codec can&#39;t decode byte 0xba in position 31: ordinal not in range(128)

最近在使用pandas读取csv文本和用matplotlib绘图时出现以下错误提示: UnicodeDecodeError: 'ascii' codec can't decode byte 0xba in position 31: ordinal not in range(128) 经过搜寻网络上的资料,发现是ascii编码的问题,在自己程序代码前面加上以下几句,即可解决问题: import sysreload(sys)sys.setdefaultencoding('gb18030') 或者把上