更改Python的默认编码?

更改Python的默认编码?

我有很多“不能编码”和“无法解码”的问题Python当我从控制台运行我的应用程序时。但在月食 皮德夫,默认字符编码设置为乌特夫-8我很好。

我搜索了一下设置默认编码,人们说Python删除了sys.setdefaultencoding函数在启动时,我们不能使用它。

那么什么是最好的解决方案呢?


不负相思意
浏览 1037回答 3
3回答

慕慕森

下面是一个简单的方法(Hack),它将返回setdefaultencoding()从sys:import sys# sys.setdefaultencoding() does not exist, here!reload(sys)  # Reload does the trick!sys.setdefaultencoding('UTF8')这不是一件安全的事不过,这显然是一次黑客攻击,因为sys.setdefaultencoding()被故意从sys当Python开始的时候。重新启用它并更改默认编码可以中断依赖于ASCII的默认代码。(这段代码可以是第三方代码,这通常会使修改它变得不可能或很危险)。

慕的地6264312

如果在尝试引导/重定向脚本输出时出现此错误UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5: ordinal not in range(128)只需在控制台中导出PYTHONIOENCODING,然后运行您的代码。export PYTHONIOENCODING=utf8
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python