windows下Python到linux运行遇到的字符编码问题
上周遇到一个问题,有一段python代码,在windows下调试完成,可以运行后,在linux下运行时遇到错误:
'CHANGE_LOG' : changelog_content.decode(), UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 110: ordinal not in range(128)
一直不能解决,后来看到一个帖子:http://blog.csdn.net/zhuche110/article/details/8564824
按那个方法做就可以了,特记录下。
1.问题描述:一段在eclipse里面写的python脚本,在Windows系统下没有问题可以运行,但在Linux系统运行报如下错误:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 110: ordinal not in range(128)
2.原因分析:字符问题。在Windows系统转Linux系统时,字符问题很容易出现。
3.解决办法:在出现问题的页加上如下三行即可:
import sys
reload(sys)
sys.setdefaultencoding('utf-8')