有没有内置的方法可以做到这一点?Python。将转义的utf字符串转换为utf-string
rawstr = r"3 \u176? \u177? 0.2\u176? (2\u952?)"
#required str is 3 ° ± 0.2° (2θ).
像
In [1] rawstr.unescape()?
Out[1]: '3° ± 0.2° 2θ'
的问题是如何rawstr转换为 'UTF-8'。
请参阅我的答案,以获得更清晰。
请回答是否比我现在正在做的更好的选择。
你可以使用'codecs.raw_unicode_escape_decode'。不幸的是,您的原始字符串包含无效的Unicode转义符,因此它不起作用(我指的是'\ u176?',它们应该是'\ uXXXX'形式) – Bakuriu
或者,创建一个字符串(使用'rb'作为前缀)并使用'.decode'('unicode-escape')',但是由于'\ u176?'不是有效的Unicode转义符,所以再次失败。 – Bakuriu
谢谢。我想我必须为我编写解码器。 – Rahul