十六进制字符串'\xd3'
也可以表示为:Ó
。
我发现将十六进制字符串的字符表示形式输入控制台的最简单方法是:
print unichr(ord('\xd3'))
或者用英文,将十六进制字符串转换为数字,然后将该数字转换为unicode代码点,最后将其输出到屏幕。这似乎是一个额外的步骤。有更简单的方法吗?
答案 0 :(得分:11)
print u'\xd3'
你需要做的就是。你只需要以某种方式告诉Python它是一个unicode文字;领先的u
就是这么做的。它甚至适用于多个角色。
如果你不是在谈论一个文字,而是一个变量:
codepoints = '\xd3\xd3'
print codepoints.decode("latin-1")
修改:print
如果与您的终端编码不兼容,则指定特定编码将不起作用,因此请让print
自动执行encode(sys.stdout.encoding)
。谢谢@ThomasK。
答案 1 :(得分:0)
如果数据是这样的“ \ xe0 \ xa4 \ xb9 \ xe0 \ xa5 \ x88 \ xe0 \ xa4 \ xb2 \ xe0 \ xa5 \ x8b \ xe0 \ xa4 \ x95 \ xe0 \ xa4 \ xb2
sys.stdout.buffer.write(data)
将打印
हैलो कल