社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  问与答

UnicodeEncodeError: 'gbk' codec can't encode char

爱情的枪 • 11 年前 • 5224 次点击  

遇到问题: UnicodeEncodeError: 'gbk' codec can't encode char

请问如何解决啊

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/211
 
5224 次点击  
文章 [ 2 ]  |  最新文章 11 年前
yangyu
Reply   •   1 楼
yangyu    11 年前

你的python版本是?问问题要专业一点,记住一点只有unicode string才可以encode, 看你的错误信息,你肯定是对byte string调用了encode,看看http://yuyang.farbox.com/python-note.html#sec-1-2与http://nedbatchelder.com/text/unipain.html特别是后者,仔细看完绝对受益匪浅

Py站长
Reply   •   2 楼
Py站长    11 年前

有可能是因为文件编码的问题,之前遇到过,

如果我们打开一个文件: f = open("out.html","w"),在windows下面,新文件的默认编码是gbk,这样的话,python解释器会用gbk编码去解析我们的网络数据流,然而网络数据流此时已经是decode过的unicode编码,这样的话就会导致解析不了,出现上述问题。

解决的办法就是,改变目标文件的编码: f = open("out.html","w",encoding='utf-8')。