Python 仅为打印更改默认编码

Python 仅为打印更改默认编码,python,unicode,encoding,printing,Python,Unicode,Encoding,Printing,有没有办法,我可以更改python中的默认编码,仅用于打印 打印语句的行为通常可以更改吗? 我不想使用sys.setdefaultencoding(),因为这会改变整个脚本,但我不知道我使用的每个模块是否都支持unicode 我知道我可以用print u'äöü.encode('utf-8')来做,但每次使用它都会很糟糕 有什么建议吗?虽然我认为你不能仅仅为了打印而这样做(明确地使用print),但你可能可以通过使用 sys.stdout=codecs.getwriter(“utf-8”)(sy

有没有办法,我可以更改python中的默认编码,仅用于打印
打印
语句的行为通常可以更改吗?

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


有什么建议吗?

虽然我认为你不能仅仅为了打印而这样做(明确地使用
print
),但你可能可以通过使用

sys.stdout=codecs.getwriter(“utf-8”)(sys.stdout)

这将更改所有“正常”程序输出的编码。如果你不熟悉它们,你可能想阅读