Python Unicode字符打印 - 编码问题

时间:2016-02-28 10:50:36

标签: python python-2.7 unicode encoding

我使用

从表单输入字段中获取Unicode字符
input_string = form["text"].value.decode('utf-8')

根据调试器,值为u'Щ',类型为unicode。 我现在想要打印到控制台,但是print input_string.encode('utf-8')导致“Щ”。

如何在控制台中成功获取Щ角色?

1 个答案:

答案 0 :(得分:0)

您的角色'Щ'的代码点是十六进制的d0a9。这转换为LatinWindows字符集中的Щ。当被视为拉丁语时,UTF-8编码始终使用可打印字符。因此,在打印UTF-8编码时总是会得到一个或多个可打印字符,在本例中为两个。

您需要一个配置为在输出UTF-8字符串时使用UTF-8的控制台。显然,控制台需要支持UTF-8才能执行此操作。此外,该控制台需要使用包含此特定字符的Font。