关于unicode:无法在Python中打印Tamil字符

Unable to print Tamil character in Python

我正在尝试用泰米尔语在Python。但遇到了困难。这是我的密码

1
2
U=u'\u0B83'
print U

这会引发错误,

UnicodeEncodeError: 'ascii' codec can't encode character u'\u0b83' in
position 0 : ordinal not in range(128)

我的默认ASCII编码。因为U0B83已经是Unicode格式,所以它应该以泰米尔语打印字符。

我也试过了,——编码:utf-8——。但结果是一样的。

如何用Unicode设置?


在Linux中,至少可以在启动python之前将区域设置为使用utf-8:

1
2
$ export LC_ALL=en_GB.utf8
$ python

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

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

1
2
>> print U.encode('utf-8')
?

看看前面的这些问题及其答案:

python、unicode和windows控制台

更改python的默认编码?


我需要的是raw-unicode-escape

如果我使用encode('raw-unicode-escape').decode('utf-8'),一切都会很好地工作。我在这里找到了答案,python将unicode十六进制utf-8字符串转换为unicode字符串