处理print()UnicodeEncodeError

时间:2014-06-16 19:07:34

标签: python-3.x unicode

我从网站中提取unicode文本并进行一些可能包含非ascii字符的打印。打印那些会引发UnicodeEncodeError。我该如何处理这个案子?我需要一个需要对现有代码进行最小更改的解决方案。

我尝试使用UTF-8对字符串进行编码(通过包装sys.stdout),但之后我得到了TypeError,因为原来的sys.stdout.write()方法需要str而不是{{} 1}}。

我不想让角色丢失。用户可能希望将输出通过管道传输到一个文件中,在这种情况下,该格式为UTF8格式。


编辑:设置bytes可以解决问题,但是我没有办法模仿"在Python中的这种行为?由于utf8与Windows控制台编码不匹配,因此某些字符看起来很奇怪。但这比计划的崩溃要好得多。

无论如何要格式化Python的输出,所以我不需要修改环境变量?

0 个答案:

没有答案