我有一个像
这样的 unicode 对象x = u"a & 日本語: enči hallöle"
并希望将其转换为带有 html 实体的 latin-1 字符串
"a & 日本語: enči hallöle"
这背后的原因是,我希望我的用户能够输入 unicode 数据,但我需要保存数据的遗留数据库只接受 latin-1 字符串。 (“ö”不用转换,其他特殊字符必须转换)
知道在这里使用哪个模块吗?我搜索了编码模块,查找了一些编解码器,尝试了一些 unicode 对象的方法,但没有找到明智的解决方案。
最佳答案
使用 unicode.encode
的 "xmlcharrefreplace"
选项,但请注意它不会将 &
转换为 &
给你:
>>> x = "a & 日本語: enči hallöle".decode("utf-8")
>>> x.replace("&", "&").encode("latin-1", "xmlcharrefreplace")
'a & 日本語: enči hall\xf6le'
关于python - 将 unicode 对象转换为带有实体的拉丁字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9112621/