如何解码和编码希伯来字符串?

How to decode and encode Hebrew strings?

我正在尝试对希伯来语字符串“שלום”进行编码和解码。然而,编码后,我得到了乱码:

>>> word = "שלום"
>>> word = word.decode('UTF-8')
>>> word
u'\u05e9\u05dc\u05d5\u05dd'
>>> print word
שלום
>>> word = word.encode('UTF-8')
>>> word
'\xd7\xa9\xd7\x9c\xd7\x95\xd7\x9d'
>>> print word
׳©׳׳•׳

我该如何正确操作?

您必须确保在您的环境中使用正确的编码(shell 或脚本)。 如果您使用的是脚本,请包括以下内容:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

确保您的环境知道您正在使用 UTF-8。 您可能会发现您的 shell 终端只接受 ASCII,因此请确保它能够支持 UTF-8。

>>> word = "שלום"
>>> word
'\xd7\xa9\xd7\x9c\xd7\x95\xd7\x9d'
>>> print word
שלום
>>> word = word.decode('UTF-8')
>>> word
u'\u05e9\u05dc\u05d5\u05dd'
>>> print word
שלום
>>> word = word.encode('UTF-8')
>>> word
'\xd7\xa9\xd7\x9c\xd7\x95\xd7\x9d'
>>> print word
שלום
>>>