原文网址:http://blog.csdn.net/trochiluses/article/details/16825269 摘要:在进行python脚本的编写时,如果我们用python来处理网页数据或者进行与中文字符有关的处理工作,经常出现这样的出错信息:SyntaxError: Non-ASCII character '\xe6' in file ./filename.py on line 3, but no encoding declared.本文主要讲解python中与unicode和中…
解释以下几个问题: (1)python2中str和unicode是两种字符串类型,与字符编码方式是什么关系? (2)str和unicode是怎么相互转换的? (3)'\x...':'\u...', '\U...': u'...',u'\u...',u'\U...'这些都是什么意思? (4)字符“汉”在str类型下显示为 '\xe6\xb1\x89',在unicode类型下为啥是这样: u'\u6c49',两者之间什么关系? (5)unicode-escape又是啥? 回答如下: 一.字符编码 首…
python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128),python没办法处理非ascii编码的,此时需要自己设置将python的默认编码,一般设置为utf8的编码格式. 查询系统默认编码可以在解释器中输入以下命令: Python代码 >>>…
1.问题描述 今天在升级Ubuntu到14.04,使用命令行启动软件更新器,进行版本升级,结果开始升级就异常退出了,具体打印如下: $update-manager -d 正在检查新版 Ubuntu 使用 'trusty.tar.gz.gpg' 对 'trusty.tar.gz' 进行验证 正在提取 'trusty.tar.gz' Traceback (most recent call last): File , in <module> sys.exit(main()) File , in ma…
背景 自动化测试调用HTMLTestRunner生成测试报告的时候,出现了编码错误,错误如题 原因 搜索了很多资料,得出的结论是python的str默认是ascii编码,和unicode编码冲突,就会报这个错误 解决方法 网上的资料推荐在代码中加上如下几句可以解决这个问题: 1 import sys 2 reload(sys) 3 sys.setdefaultencoding('utf8') 深入 博主在后来又遇到过多次编码错误,最常遇到的就是下面这个: “UnicodeDecodeError:…
当我在运行一个基于scrapy的爬虫时出现UnicodeDecodeError: 'ascii' codec can't decode byte 0xe7 in position 12: ordinal not in range(128)的报错,原因是原因就是python的str默认是ascii编码,和unicode编码冲突. 解决办法:在代码中加入 import sys reload(sys) sys.setdefaultencoding('utf8') 就可以解决.…
1. 由于使用Python Selenium做网页自动化测试时,有截取网页上的中文信息保存到测试结果中,最终出现编码错误如下: File "D:/PycharmProjects/AutoTest/TestZone/RunTest.py", line 25, in <module> runner.run(discover) File "D:\PycharmProjects\AutoTest\Base\HTMLTestRunner.py", line 631…
最近在用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在进行编…
python 3以上版本使用pickle.load读取文件报UnicodeDecodeError: 'ascii' codec can't decode byte 0x8b in position 6 只需要在打开的时候指定编码 fo = open(file, 'rb')    dict = pickle.load(fo,encoding='iso-8859-1')…
先交待下开发环境: 操作系统:Windows 7 Python版本:2.7.9 Pip版本:6.1.1 其他环境忽略 在windows下使用pip下载python包,出现如下错误 Collecting xxxxxx Exception: Traceback (most recent call last): File "D:\Python27\lib\site-packages\pip-6.0.8-py2.7.egg\pip\basecommand.py", line 232, in m…