Python如何解码字符串格式的UTF8编码

How Python decodes UTF8 Encoding in String Format

现在有一串utf-8:

s = '\346\235\216\346\265\267\347\216\211'

需要解码,现在只能这样了:

result = eval(bytes(f"b'{s}'", encoding="utf8")).decode('utf-8')

这样不安全,有没有更好的办法?

你可以decoded_string = s.decode("utf8")

使用ast.literal_eval(),不安全。

那么你不需要调用bytes(),因为它会return一个字节串。

result = ast.literal_eval(f"b'{s}'").decode('utf-8')

可能是您希望得到的......:[=​​11=]

'\346\235\216\346\265\267\347\216\211'.encode('utf8').decode('unicode-escape')