首页 > 解决方案 > python将十六进制字符串编码/解码为utf-8字符串

问题描述

我试图在 python 中解码一个十六进制字符串。

value = ""
for i in "54 C3 BC 72 20 6F 66 66 65 6E 20 4B 6C 69 6D 61".split(" "):
  value += chr(int(i, 16))
print(value)

结果:

Tür offen Klima

预期结果应该是“Tür offen Klima” 我怎样才能使它正常工作?

标签: pythonutf-8hexdecodeencode

解决方案


您的数据被编码为 UTF-8,这意味着您有时必须查看多个字节才能获得一个字符。最简单的方法可能是将字符串解码为字节序列,然后将这些字节解码为字符串。Python 具有以下两种内置功能:

value = bytes.fromhex("54 C3 BC").decode("utf-8")


推荐阅读