更改Python的默认编码?

发布于 2021-02-02 23:21:50

从控制台运行应用程序时,Python存在许多“无法编码”和“无法解码”的问题。但是在Eclipse PyDev IDE中,默认字符编码设置为UTF-8,我很好。

我四处寻找设置默认编码的方法,有人说Python sys.setdefaultencoding在启动时会删除该函数,因此我们无法使用它。

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

关注者
0
被浏览
129
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    这是一个更简单的方法(黑客),可为你提供setdefaultencoding()从中删除的功能sys:

    import sys
    # sys.setdefaultencoding() does not exist, here!
    reload(sys)  # Reload does the trick!
    sys.setdefaultencoding('UTF8')
    

    不过,这并不是一件安全的事情:这显然是一个hack,因为sys.setdefaultencoding()有意将其从sysPython启动时删除。重新启用它并更改默认编码可能会破坏依赖于ASCII的默认代码(此代码可以是第三方的,这通常会使修复它变得不可能或危险)。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看