繁体   English   中英

在python中从十六进制字符转换为Unicode字符

[英]Convert from hex character to Unicode character in python

十六进制字符串'\\xd3'也可以表示为: Ó

我发现将十六进制字符串的字符表示形式发送到控制台的最简单方法是:

print unichr(ord('\xd3'))

或者在英语中,将十六进制字符串转换为数字,然后将该数字转换为 unicode 代码点,最后将其输出到屏幕。 这似乎是一个额外的步骤。 有更容易的方法吗?

print u'\xd3'

这就是你所要做的。 你只需要以某种方式告诉 Python 它是一个 unicode 文字; 领导u这样做。 它甚至适用于多个字符。

如果您不是在谈论文字,而是在谈论变量:

codepoints = '\xd3\xd3'
print codepoints.decode("latin-1")

编辑:如果与您的终端编码不兼容,则在print时指定特定编码将不起作用,因此只需让print自动执行encode(sys.stdout.encoding) 谢谢@ThomasK。

如果数据是这样的“\\xe0\\xa4\\xb9\\xe0\\xa5\\x88\\xe0\\xa4\\xb2\\xe0\\xa5\\x8b\\xe0\\xa4\\x95\\xe0\\xa4\\xb2”

sys.stdout.buffer.write(data) 

会打印

हैलो कल

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM