Python Unicode 字符打印 - 编码问题



我正在使用表单输入字段获取 Unicode 字符

input_string = form["text"].value.decode('utf-8')

根据调试器,该值为 u'Щ' 类型为 unicode。我现在想将 Щ 打印到控制台,但print input_string.encode('utf-8')结果为"Щ"。

如何成功让 Щ 字符在控制台中打印?

字符

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

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

最新更新