UnicodeEncodeError:'charmap'编解码器无法编码字符(在Python 3.3中)

时间:2014-01-14 14:46:17

标签: python unicode encode python-3.3 trackback

当我尝试在Python中打印所有ASCII字符只有127个正在打印而我在127之后输出错误。我无法理解该错误是什么意思

实施例

t = list(range(0, 256))
for x in t:
    print(str(x) + ". " + chr(x))

错误:

Traceback (most recent call last):
  File "D:\Study\Pedia\Python Book\6. Functions\2. Built-in functions\ord_chr.py", line 6, in <module>
    print(str(x) + ". " + str(chr(x)))
  File "C:\Python33\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\x80' in position 5: character maps to <undefined>

注意:我无法向您显示完整的输出,因为我无法从sublime输出控制台复制完整的原始输出。不知道为什么它不能被复制的真正原因。

<小时/> enter image description here

2 个答案:

答案 0 :(得分:1)

ASCII包含128个字符(0127)的定义。

那里不包括

\x80(128)。

答案 1 :(得分:1)

当我尝试在Windows,Python 2.7上编写代码时,它无一例外地运行。我不得不截取屏幕截图,因为复制文本只是忽略那些扩展的ascii字符。

part 1 part 2 part 3