仅为打印更改默认编码

时间:2014-04-16 14:33:57

标签: python unicode encoding printing

有没有办法,我可以更改python 中的默认编码仅用于打印
print陈述的行为一般可以改变吗?

我不想用sys.setdefaultencoding()来做,因为这会改变整个脚本,但我不知道我使用的每个模块是否支持unicode ...
我知道我可以用print u'äöü'.encode('utf-8')做到这一点,但每次使用它都会很糟糕......

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

虽然我认为你只能进行打印(明确地使用print),但你可能可以使用

完成你想要的任务。

sys.stdout = codecs.getwriter("utf-8")(sys.stdout)

这改变了所有" normal"的编码。程序输出。如果您不熟悉它们,可能需要阅读this article on standard streams