2

我正在尝试在 Python 中使用泰米尔语。却遇到了困难。这是我的代码

U=u'\u0B83'
print U

这会引发错误,

UnicodeEncodeError:“ascii”编解码器无法在位置 0 编码字符 u'\u0b83':序数不在范围内(128)

我在 ascii 中的默认编码。由于 u0b83 已经是 unicode,它应该以泰米尔语打印字符。

我也试过这个,# - - 编码:utf-8 - -。但结果是一样的。

如何在 unicode 中设置它?

4

3 回答 3

5

至少在 Linux 中,您可以在启动 Python 之前将您的语言环境设置为使用 UTF-8:

$ export LC_ALL=en_GB.utf8
$ python

您当然可以使用任何具有兼容编码的语言环境(但我推荐使用 UTF-8)。

或者,在输出字符串时对其进行编码:

>> print U.encode('utf-8')
ஃ
于 2012-04-29T10:13:30.433 回答
2

看看这些较早的问题及其答案:

Python、Unicode 和 Windows 控制台

更改 Python 的默认编码?

于 2012-04-29T10:02:54.853 回答
1

我需要的是raw-unicode-escape.

如果我使用encode('raw-unicode-escape').decode('utf-8')一切正常。我在这里找到了答案,Python Convert Unicode-Hex utf-8 strings to Unicode strings

于 2012-04-29T18:15:09.337 回答