我正在尝试在 Python 中使用泰米尔语。却遇到了困难。这是我的代码
U=u'\u0B83'
print U
这会引发错误,
UnicodeEncodeError:“ascii”编解码器无法在位置 0 编码字符 u'\u0b83':序数不在范围内(128)
我在 ascii 中的默认编码。由于 u0b83 已经是 unicode,它应该以泰米尔语打印字符。
我也试过这个,# - - 编码:utf-8 - -。但结果是一样的。
如何在 unicode 中设置它?
至少在 Linux 中,您可以在启动 Python 之前将您的语言环境设置为使用 UTF-8:
$ export LC_ALL=en_GB.utf8
$ python
您当然可以使用任何具有兼容编码的语言环境(但我推荐使用 UTF-8)。
或者,在输出字符串时对其进行编码:
>> print U.encode('utf-8')
ஃ
我需要的是raw-unicode-escape
.
如果我使用encode('raw-unicode-escape').decode('utf-8')
一切正常。我在这里找到了答案,Python Convert Unicode-Hex utf-8 strings to Unicode strings