无法在Python中打印泰米尔语字符

时间:2012-04-29 09:59:18

标签: python unicode tamil

我正在尝试在Python中使用Tamil语言。但遇到了困难。这是我的代码

U=u'\u0B83'
print U

这会引发错误,

  

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

我在ascii中的违约行为。由于u0b83已经是unicode,它应该打印泰米尔语中的角色。

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

如何在unicode中设置它?

3 个答案:

答案 0 :(得分:5)

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

$ export LC_ALL=en_GB.utf8
$ python

您当然可以使用具有兼容编码的任何区域设置(但我建议使用UTF-8)。

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

>> print U.encode('utf-8')
ஃ

答案 1 :(得分:2)

答案 2 :(得分:1)

我需要的是raw-unicode-escape

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