python 将字符编码更改为utf_8

7 python

实际数据:CN=username,,,,(在 MySQL 数据库中看起来如何),当我获取这些数据时,这就是它在 python 变量中的样子(从 MySQL 检索)OU=CompanyName:,,,,DC=companyDC=intraCN=usernameOU=CompanyNameDC=companyDC=intra

当我尝试这个时;

truestr = unicode(str,'utf-8');
Run Code Online (Sandbox Code Playgroud)

抛出异常并显示以下消息:

“ascii”编解码器无法解码位置 4 中的字节 0xc4:序数不在范围内(128)

我该如何解决这个问题?(我使用Python 2.6)

Viv*_*ble 4

您可以通过以下方法检查编码:

>>> import sys
>>> sys.getdefaultencoding()
'utf-8'
>>> 
Run Code Online (Sandbox Code Playgroud)

如果编码ascii设置为utf-8

  1. 打开以下文件(我使用的是Python 2.7):

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

  2. 然后更新以下内容utf-8

    sys.setdefaultencoding("utf-8")

[编辑2]

您可以在旅游代码中添加以下内容(在开始时)然后检查:-

>>> try:
...     import apport_python_hook
... except ImportError:
...     pass
... else:
...     apport_python_hook.install()
... 
>>> import sys
>>> 
>>> sys.setdefaultencoding("utf-8")
>>> 
>>>
Run Code Online (Sandbox Code Playgroud)