如何设置python的编码格式为utf-8

重装了系统(ubuntu 14.04)原来正常可用的OpenERP项目在切换到开发者模式的时候报错:

UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128)

而在服务器上的项目正常可用,其原因是由于python的默认编码设置为ascii,可以用以下命令查看:

import sys

sys.getdefaultencoding()

解决方案有两种:

1. 在项目启动文件中添加设置字符为utf8:

 

import sys  

reload(sys)  

sys.setdefaultencoding('utf8')  

2. 在python的lib文件夹下的sitecustomize.py文件中添加代码:(我的文件位于/usr/lib/python2.7)

  2 import sys

  3 reload(sys)

  4 sys.setdefaultencoding('utf8')

  5 

  6 

  7 

  8 try:

  9     import apport_python_hook

 10     

 11     

 12 except ImportError:

 13     pass

 14 else:

 15     apport_python_hook.install()

relaod(sys)一句是必须的

 

具体细节参看:http://yeelone.blog.51cto.com/1476571/957066

你可能感兴趣的:(python)