我在 Python 中有一个 spannkr \xc3\xa4ftig, da\xc3\x9f unser 的输出。我如何用变音符号替换它?

最佳答案

德语字符已经存在,但编码为 utf-8。如果你想在解释器中看到变音等,那么你可以解码为 str :

>>> bs = b'spannkr \xc3\xa4ftig, da\xc3\x9f unser'
>>> s = bs.decode('utf-8')
>>> print(s)
spannkr äftig, daß unser

您可能正在处理以某种方式包含 utf-8 编码数据的 str。在这种情况下,您需要执行一个额外的步骤:
>>> s = 'spannkr \xc3\xa4ftig, da\xc3\x9f unser'
>>> bs = s.encode('raw-unicode-escape')  # encode to bytes without double-encoding
>>> print(bs)
b'spannkr \xc3\xa4ftig, da\xc3\x9f unser'
>>> decoded = bs.decode('utf-8')
>>> print(decoded)
spannkr äftig, daß unser

没有一种简单的方法可以区分错误嵌入的空格和单词之间的空格。您需要使用某种拼写检查器或自然语言应用程序。

10-08 14:38