可怕的python编码错误,如何阻止它们?

时间:2010-05-17 00:13:50

标签: python unicode utf-8 character-encoding

这些一直困扰着我。为什么?似乎我的控制台无法处理编码。我认为我的浏览器和文字处理器可以处理它。我没有所有可能的字符的主列表,它正在窒息。在不修改数据的情况下解决这个问题的最佳方法是什么?

'charmap' codec can't encode character u'\xca'

1 个答案:

答案 0 :(得分:2)

您需要找出控制台的编码(哪个系统,操作系统等等?) - 'charmap'遗憾的是编解码器的识别有些模糊,因为the docs解释:

  

还有另一组编码   (所谓的 charmap 编码)即   选择所有的不同子​​集   unicode代码点以及这些如何   代码点映射到字节   0x0-0xff。看看如何做到这一点   只需打开例如编码/ cp1252.py   (这是使用的编码   主要在Windows上)。有个   字符串常量,256个字符   这表明你是哪个角色   映射到哪个字节值。

     

所有这些编码只能编码   65536(或1114111)中的256   在unicode中定义的代码点。

即,它标识了一组可能的编解码器,而不是特定的编解码器。

一旦您知道您的控制台支持名为'foobar'的编解码器,请更改现在的语句

print(someunicode)

print(someunicode.encode('foobar'))