ubuntu下关于python乱码错误问题

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

这是由于python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报上面的错误。

1.首先可以在终端中输入以下代码:

import sys
sys.getdefaultencoding()

此时如果得到结果为 'ascii',说明需要更换为'utf-8'

2.在python安装目录的Lib\site-packages中打开sitecustomize.py文件

sudo gedit /usr/lib/python2.7/sitecustomize.py

3.然后将下面的代码复制到最上面:

# encoding=utf8

import sys

reload(sys)

sys.setdefaultencoding('utf8')

4.执行第一步中的代码,得到结果为'utf-8',说明更换成功

你可能感兴趣的:(Linux学习使用,linux,ubuntu,python)