我快疯了。我试图用一个é字符pprint
一个dict
,结果把我扔了出去。在
我使用的是Python 3:
from pprint import pprint
knights = {'gallahad': 'the pure', 'robin': 'the bravé'}
pprint (knights)
错误:
^{pr2}$我阅读了Python ASCII文档,但似乎没有一种快速的方法来解决这个问题,除了将dict分解,通过.encode
将有问题的值重写为ASCII值,然后再次重新组装dict
我有没有办法不把听写拆开就把它打印出来?在
这与
pprint
无关:模块只将字符串格式化为另一个字符串,然后将格式化后的字符串传递给底层流。因此,当é
字符(U+00E9)被写入stdout时,就会发生错误。在现在它实际上取决于底层操作系统和Python解释器的配置。在Linux或其他类似Unix的系统中,可以在启动Python之前设置环境变量
PYTHONIOENCODING
,在终端会话中声明UTF-8或Latin1字符集:(或根据终端或终端窗口的实际编码使用
PYTHONIOENCODING=utf8
)。在相关问题 更多 >
编程相关推荐