今天重装Pillow时遇到了编码问题,编译不通过,于是重新设置了一下python的默认编码。
Python在初始化的时候默认使用ascii编码,并且在初始化之后禁止用户修改默认编码,所以造成很多非ascii编码的文件在非显式指定编码的时候报错,这样我们就需要修改一下默认编码为UTF-8了。
在Ubuntu中
/etc/python[x.x]/sitecustomize.py这个文件在python运行之前会自动运行,也是整个python的“全站”用户自定义初始化文件。
在这个文件的try:前添加三行内容(如果没有这个文件,可以新建,并修改成下面内容):
1 | import sys |
在Windows中
从Python安装目录下的Lib/site-packages目录中新建这个sitecustomize.py文件,修改内容同上,Lib/site-packages目录中的这个文件也会被自动运行。
在python shell中
1 | import sys |
这两行查看输出结果是否为UTF-8
如果还不是,就显式指定编码格式吧:
1 | print a.encode('utf-8') |