重装了系统(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的编码格式为utf-8的更多相关文章

  1. python系统编码格式

    python在安装的时候默认的编码格式是ASCII,当程序中出现非ASCII编码时,python的处理常常会报这样的错UnicodeDecodeError,python没办法处理非ASCII编码的,此 ...

  2. Python 的编码格式

    [前言] Python的编码格式对于初学者来说是很头疼的一件事,不过如果接触的多了,就会发现,只要在恰当的时候使用了恰好的编码,就不会出现太多的问题. [编码介绍] python 的编码格式2.x 和 ...

  3. MyEclipse中文乱码,编码格式设置,文件编码格式 总结

    一.设置新建常见文件的默认编码格式,也就是文件保存的格式.在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致, ...

  4. 【Python】Part I 设置Python环境

    01 设置Python环境 02 破解WingIDE (1)下载专业版wingide http://wingware.com/downloads/wing-pro/6.0.11-1/binaries& ...

  5. PyCharm设置Python版本

    PyCharm默认会使用虚拟的Python解释器,即使没有安装也能够运行Python代码,但有强迫症的程序员一定不能忍受Project中存在这么多的文件目录 设置Python版本 File->S ...

  6. Windows系统中设置Python程序定时运行方法

    Windows系统中设置Python程序定时运行方法 一.环境 win7 + Python3.6 二.步骤 1,在Windows开始菜单中搜索“计划任务”,并且点击打开“计划任务”: 2.点击“创建基 ...

  7. conda设置Python虚拟环境

    conda设置Python虚拟环境     版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Co_zy/article/details/7741261 ...

  8. 设置python 命令行交互程序自己主动补齐

    1. 新建Python环境变量配置文件: vim ~/.pystartup # Add auto-completion and a stored history file of commands to ...

  9. setCharacterEncoding 是在request.getParameter获取参数之前 设置request的编码格式 一步到位

    setCharacterEncoding 是在request.getParameter获取参数之前 设置request的编码格式 一步到位

随机推荐

  1. 机器学习-Confusion Matrix混淆矩阵、ROC、AUC

    本文整理了关于机器学习分类问题的评价指标——Confusion Matrix.ROC.AUC的概念以及理解. 混淆矩阵 在机器学习领域中,混淆矩阵(confusion matrix)是一种评价分类模型 ...

  2. Java笔记15:多线程

    Java实现多线程有两种方式:一是继承Thread类:二是实现Runable接口. 一.Thread实现 publicclass ThreadDemo2 { publicstaticvoid main ...

  3. php 中 拓展 xdebug的完全理解

    question: Xdebug unable to connect to client, where do I start debugging the debugger? I'm setting u ...

  4. 在centos中安装mysql详细步骤说明

    Last login: Sun Dec 24 04:55:59 2017 1.安装依赖 [root@node001 ~]# yum install -y perlLoaded plugins: fas ...

  5. java中Queue接口

    Queue接口与List.Set同一级别,都是继承了Collection接口.LinkedList实现了Queue接 口.Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类 ...

  6. Python多线程问题的资料查找与汇总

    Python多线程问题的资料查找与汇总 声明: 1)本报告由博客园bitpeach撰写,版权所有,免费转载,请注明出处,并请勿作商业用途. 2)若本文档内有侵权文字或图片等内容,请联系作者bitpea ...

  7. openerp 6.0.2库存业务

    一.复式库存(Double-Entry Stock Management)和库存移动(Stock Move) OpenERP的库存管理采取了独特的复式库存(Double-Entry Stock Man ...

  8. fwrite和fread函数的用法小结(转)

    fwrite和fread是以记录为单位的I/O函数,fread和fwrite函数一般用于二进制文件的输入输出. #include <stdio.h> size_t fread(void * ...

  9. stderr和stdout详细解说(转)

    今天又查了一下fprintf,其中对第一个参数stderr特别感兴趣. int fprintf(FILE *stream,char *format,[argument]): 在此之前先区分一下:pri ...

  10. CentOS修复grub

    grub启动项损坏无法进入系统. 进入grub模式(可借助安排盘rescue后在shell中输入grub). 一:     通过下面三个命令中的一个.找到正确的grub位置.     1. find ...