【问题标题】:python3 encode replace unicode characterspython3编码替换unicode字符
【发布时间】:2017-10-14 09:13:19
【问题描述】:

根据文档,以下命令

'Brückenspinne'.encode("utf-8",errors='replace')

应该给我字节序列b'Br??ckenspinne'。然而,unicode 字符并没有被替换,而是被编码:

b'Br\xc3\xbcckenspinne'

你能告诉我我是如何真正消除 unicode 字符的吗? (我使用 replace 进行测试,我打算稍后使用'xmlcharrefreplace'。老实说,我想将 unicode 字符转换为它们的 xmlcharref,将所有内容都保留为字符串)。

谢谢。

【问题讨论】:

    标签: python python-3.x unicode python-unicode


    【解决方案1】:

    utf-8编码可以表示字符ü;不会发生替换。

    使用不能代表字符的其他编码。例如ascii:

    >>> 'Brückenspinne'.encode("ascii", errors='replace')
    b'Br?ckenspinne'
    
    >>> 'Brückenspinne'.encode("ascii", errors='xmlcharrefreplace')
    b'Brückenspinne'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-19
      • 2011-04-26
      • 2014-12-03
      • 1970-01-01
      • 2017-06-25
      • 2016-02-28
      相关资源
      最近更新 更多