当前位置: 首页 > 面试题库 >

更改Python的默认编码?

唐向荣
2023-03-14
问题内容

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

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

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


问题答案:

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

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

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



 类似资料:
  • 问题内容: 有没有办法更改String(byte [])构造函数使用的编码? 在我自己的代码中,我使用String(byte [],String)指定编码,但是我使用的是无法更改的外部库。 输出为: 我尝试更改系统属性,但是它不起作用。 问题答案: 您需要在启动JVM之前更改语言环境。看到: Java,错误ID 4163515 有些地方似乎暗示您可以通过在启动JVM时设置file.encoding

  • 我试图找到一种方法,为通过注释从Spring Boot中的application.property文件访问的属性设置UTF-8编码。到目前为止,我已经通过创建一个bean成功地将编码设置到我自己的属性源: 这样的解决方案存在两个问题。这一次,它与Spring Boot默认使用的“application.properties”位置(http://docs.Spring.io/spring-boot/

  • 我已经这样配置了我的axios 在我的组件中,我作为 现在,上面的方法可以工作了,但是我想在不影响全局基本URL的情况下更改,这样在我的组件中,我就可以在没有APIendpoint的情况下简单地使用它 我已经试过了 我该怎么办?

  • 问题内容: 我将如何为所有实例设置默认字体。而不是分别为每个字体设置字体。 问题答案: 使用定义JLabel的默认字体: 通过:http : //coding.derkeiler.com/Archive/Java/comp.lang.java.help/2005-04/msg00395.html

  • 默认情况下,当您将命令的输出重定向到文件或通过管道将其导入PowerShell中的其他内容时,编码是UTF-16,这是不有用的。我想把它改成UTF-8。 可以通过将语法替换为来逐个实现,但每次都要重复这样做会很尴尬。 在PowerShell中设置东西的持久方法是将它们放在中;我已经验证了这个文件确实是在启动时执行的。 曾经说过,可以使用设置输出编码,但我尝试过,没有效果。 https://blog

  • 我正在我的Windows 10 PC上使用Visual Studio Code。我想将我的默认终端从Windows PowerShell更改为Ubuntu上的Bash(在Windows上)。 我该怎么做呢?