Python:UTF-8 十六进制到 UTF-16 十进制

标签 python utf-8 hex

我得到了一个汉字“烷烃”(U+70F7),它有 UTF-8(十六进制)- 0xE7 0x83 0xB7 (e783b7) 的表示。 (参见 http://www.fileformat.info/info/unicode/char/70f7/index.htm)

我需要将这个“e783b7”字符串转换为十进制值 28.919(UTF-16 十进制)。

因为我现在正在研究这个问题一个小时,所以我认为在 stackoverflow 上提问更快

非常感谢

博士。眼镜蛇

最佳答案

使用 ord 内置函数,如下所示:

>>> print('\u70f7')
烷
>>> print(ord('\u70f7'))
28919

如果您只有一个十六进制字符串(适用于 Python 2 和 3):

>>> s = bytearray.fromhex('e783b7').decode('utf-8')
>>> s
u'\u70f7'
>>> print(s)
烷

关于Python:UTF-8 十六进制到 UTF-16 十进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42923536/

相关文章:

python - 无法识别转义字符串

python - 尝试通过Python下载youtube字幕时,为什么会出现Regex错误?

python - For 循环迭代,范围从索引 1 重新开始

python - 停止扭曲时,工厂会等待 sql 执行完成吗?

javascript - 创建无效的 UTF8 字符串

mysql - [FORMBODY参数为空?

c++ - char[] 到十六进制字符串练习

php - ajax请求和特殊字符的latin1/unicode转换问题

C++ 小字符转十六进制函数?

hex - 如何获取每个环境的 Elixir 依赖项?