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

为什么我们不应该在py脚本中使用sys.setdefaultencoding(“ utf-8”)?

濮阳宏硕
2023-03-14
问题内容

我在脚本顶部看到了几个使用此脚本的py脚本。在什么情况下应该使用它?

import sys
reload(sys)
sys.setdefaultencoding("utf-8")

问题答案:

根据文档:这允许你从默认的ASCII切换到其他编码,例如UTF-8,Python运行时在必须将字符串缓冲区解码为unicode时将使用该编码。

此功能仅在Python扫描环境时在Python启动时可用。必须在系统范围的模块中调用,sitecustomize.py评估完setdefaultencoding()该sys模块后,将从该模块中删除该功能。

实际使用它的唯一方法是将属性重新带回的重载hack

此外,使用sys.setdefaultencoding()一直气馁,它已成为一个无操作的py3k。py3k的编码硬连线到“ utf-8”,更改它会引发错误。



 类似资料:
  • 问题内容: 我有2个线程T1和T2,两者都有不同的工作,因此通常我们更喜欢通过线程Joins完成此任务。 但是我们无需使用join()就可以做到这一点。我们可以在T1线程中添加T2线程的代码。这有什么区别? 问题答案: 主要区别在于,当我们将T2线程与T1连接在一起时,T2执行该任务的时间也可以由T1占用,这意味着它们将并行执行不同的任务。但是,当您在T1中包含T2线程代码时,不会发生这种情况。线

  • 从外观上看-似乎创建了一个对象的克隆。如果是这样,那么对于实现可克隆接口(只有不可变对象是新的,因为可变对象有引用复制)的关注,哪一个是最好的,为什么? 我昨天实现了克隆,然后意识到我必须为非字符串/首字母元素提供自己的修改。然后我被告知我现在正在使用的。这两个实现似乎都提供了类似的功能。 谢谢

  • 问题内容: 我正在解决这个问题,有没有一种方法可以覆盖Java中的类变量? 第36条反对意见是: 如果您看到,请运行。 谁能解释为什么皱眉呢? 问题答案: 这是一个风格上的问题,而不是直接的问题。这表明您没有正确考虑班上正在发生的事情。 考虑一下什么意思: 此变量存在于类级别,在每个实例 中并不单独存在,并且在扩展me的类中没有独立存在 。 考虑一下什么意思: 该变量可以在此类,同一包中的 类以及

  • 问题内容: Java中的原始类型是什么?为什么我经常听到不应该在新代码中使用它们的信息? 如果我们不能使用原始类型,那有什么选择呢?有什么更好的选择? 问题答案: 什么是原始类型? Java语言规范对原始类型的定义如下: JLS 4.8原始类型 原始类型定义为以下之一: 通过采用通用类型声明的名称而没有随附的类型参数列表而形成的引用类型。 数组类型,其元素类型为原始类型。 未从的超类或超接口继承s

  • 问题内容: 我应该把shebang放在我的Python脚本中吗?以什么形式? 要么 这些同样便携吗?最常使用哪种形式? 问题答案: 任何脚本中的shebang行都决定了脚本的执行能力,就像独立的可执行文件一样,无需python事先在终端中键入或在文件管理器中双击(正确配置时)。不必要,但通常放在那里,因此当有人看到在编辑器中打开文件时,他们会立即知道他们在看什么。但是,您使用的家当线IS重要。 P

  • 今天在课堂上,我的老师告诉我,我不应该在python中使用全局变量,因为函数应该能够独立存在。我想我可以通过参数和返回值来实现这一点?任何帮助都会很好,谢谢。