假设我有一个 UTF-8 字符串:
u"Some String"
现在我想要的就是将上面的这个字符串转换为 UTF-8 字符的字符串,但以十六进制表示,所以它看起来像这样:
"53 6F 6D 65 20 53 74 72 69 6E 67"
如何在 Python 2.7 中实现这一目标?
最佳答案
我将在列表理解中使用 join
和 format
构建字符串,迭代字符并使用 ord
获取其代码:
s = u"Some String"
print(" ".join(["{:02X}".format(ord(c)) for c in s]))
结果:
53 6F 6D 65 20 53 74 72 69 6E 67
注释
- 适用于 Python 2 和 3
- 如果您的角色的代码 > 255,您可能会得到大小大于 2 的标识符,但它仍然有效。
关于python - 从 unicode 字符串中获取十六进制的 UTF-8 字符序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43504110/