在我的html文件中,“schilderung”这个词看起来很正常,似乎没有(编码?)问题。
但是当我复制这个词时,我得到了如下的结果:“schilde rung”,如果我想知道python的长度,我得到13(而不是12…)。
这里有什么问题,我怎么处理?
非常感谢你的帮助!
编辑:
目前,我使用以下方法:output.write(text.decode("utf-8"))
这可以正确地处理所有的元音变音符和其他特殊字符,但上面的问题仍然存在。打印(repr(txt))给出:schilde\xc2\xadrung
我们如何解决这个问题?谢谢!

最佳答案

字符串中U+00AD SOFT HYPHENr之前:

>>> "Schilde­rung".decode('utf-8')
u'Schilde\xadrung'

要删除非ascii字符:
>>> s = u'Schilde\xadrung'
>>> s.encode('ascii', 'ignore').decode()
u'Schilderung'
>>> len(_)
11

10-04 22:09