有时候在win中运行代码会遇到题目中的报错问题:
"UnicodeEncodeError: 'gbk' codec can't encode character '\xa0' in position XXX",让人摸不着头脑的是程序开头的编码设置# coding:utf-8 和数据流IO操作时的编码转化都已经在程序中加入加入了。gbk哪里来的呢?其实就是win中新文件的默认编码是gbk。
当我们遇到编码问题的时候,有三个地方需要注意的:文件的编码,IDE的编码,还有数据流IO操作过程中的编码。
后面两种很多网络上的分享帖都有说,而第一种往往就比较少。恰恰标题中的这个问题就是因为文件的编码是gbk所导致的。
解决的方法很简单,以python的pycharm为例只要在设置中确保项目编码和默认编码统一为UTF-8.保存后,将报错的代码复制到新建的文件中运行即可。