问题:python在处理中英文混合的目录时,提示,asscii can’t decode ‘utf-8’


这是Python的编码问题,设置python的默认编码为utf8

python安装目录:/etc/python2.x/sitecustomize.py

import sys
reload(sys)
sys.setdefaultencoding('utf-8')
try:
    import apport_python_hook
except ImportError:
    pass
else:
    apport_python_hook.install()

如果在windows下:
可以在Python安装目录下的Lib/site-packages目录中,新建一个sitecustomize.py文件(也可以建在其它地方,然后手工导入,建在这里,每次启动Python的时候设置将自动生效),内容如下:

import sys
sys.setdefaultencoding('utf-8') #set default encoding to utf-8

然后可以查看到改变已经生效

>>> import sys
>>> sys.getdefaultencoding()
'utf-8'

此时运行程序,如果仍然报告之前的错误,只需要显示地设定输出的编码

print s.encode('utf-8')

就可以看到正确显示